"""Customer Provided Item"" cannot be Purchase Item also",&quot;Predmet koji pruža klijent&quot; takođe ne može biti predmet kupovine,
"""Customer Provided Item"" cannot have Valuation Rate",&quot;Predmet koji pruža klijent&quot; ne može imati stopu vrednovanja,
"""Is Fixed Asset"" cannot be unchecked, as Asset record exists against the item","&quot;Da li je osnovno sredstvo&quot; ne može biti označeno, kao rekord imovine postoji u odnosu na stavku",
'Based On' and 'Group By' can not be same,' Temelji se na' i 'Grupisanje po ' ne mogu biti isti,
'Days Since Last Order' must be greater than or equal to zero,' Dana od poslednje porudzbine ' mora biti veći ili jednak nuli,
'Entries' cannot be empty,' Prijave ' ne može biti prazno,
'From Date' is required,' Od datuma ' je potrebno,
'From Date' must be after 'To Date',"' Od datuma ' mora biti poslije ' Do datuma""",
'Has Serial No' can not be 'Yes' for non-stock item,' Ima serijski broj ' ne može biti ' Da ' za artikle bez zalihe,
'Opening',&#39;Otvaranje&#39;,
'To Case No.' cannot be less than 'From Case No.','Za slucaj br' ne može biti manji od 'Od slucaja br',
'To Date' is required,' Do datuma ' je obavezno,
'Total',&#39;Ukupno&#39;,
'Update Stock' can not be checked because items are not delivered via {0},'Azuriranje zalihe' se ne može provjeriti jer artikli nisu dostavljeni putem {0},
'Update Stock' cannot be checked for fixed asset sale,&#39;Update Stock&#39; ne može se provjeriti na prodaju osnovnih sredstava,
1 exact match.,1 tačno podudaranje.,
90-Above,Iznad 90,
A Customer Group exists with same name please change the Customer name or rename the Customer Group,Grupa kupaca sa istim nazivom već postoji. Promijenite naziv kupca ili promijenite naziv grupe kupaca.,
A Default Service Level Agreement already exists.,Ugovor o nivou usluge već postoji.,
A Lead requires either a person's name or an organization's name,Voditelj zahteva ili ime osobe ili ime organizacije,
A customer with the same name already exists,Kupac sa istim imenom već postoji,
A question must have more than one options,Pitanje mora imati više opcija,
A qustion must have at least one correct options,Qurance mora imati najmanje jednu ispravnu opciju,
A4,A4,
API Endpoint,API Endpoint,
API Key,API Key,
Abbr can not be blank or space,Skraćeno ne može biti prazan ili prostora,
Abbreviation already used for another company,Skraćenica već koristi za druge kompanije,
Abbreviation cannot have more than 5 characters,Skraćeni naziv ne može imati više od 5 znakova,
Abbreviation is mandatory,Skraćenica je obavezno,
About the Company,O kompaniji,
About your company,O vašoj kompaniji,
Above,Iznad,
Academic Term,akademski Term,
Academic Term: ,Akademski termin:,
Academic Year,Akademska godina,
Academic Year: ,Akademska godina:,
Accepted + Rejected Qty must be equal to Received quantity for Item {0},Količina prihvaćeno + odbijeno mora biti jednaka zaprimljenoj količini proizvoda {0},
Access Token,Access Token,
Accessable Value,Dostupna vrednost,
Account,Konto,
Account Number,Broj računa,
Account Number {0} already used in account {1},Broj računa {0} već se koristi na nalogu {1},
Account Pay Only,Račun plaćaju samo,
Account Type,Vrsta konta,
Account Type for {0} must be {1},Tip naloga za {0} mora biti {1},
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Stanje računa već u kredit, što se ne smije postaviti 'ravnoteža se mora' kao 'zaduženje """,
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Stanje računa već u zaduženje, ne smiju postaviti 'ravnoteža se mora' kao 'kreditne'",
Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly.,Broj računa za račun {0} nije dostupan. <br> Molimo pravilno podesite svoj račun.,
Account with child nodes cannot be converted to ledger,Konto sa pod-kontima se ne može pretvoriti u glavnoj knjizi,
Account with child nodes cannot be set as ledger,Račun s djetetom čvorovi se ne može postaviti kao glavnu knjigu,
Account with existing transaction can not be converted to group.,Konto sa postojećim transakcijama se ne može pretvoriti u grupu konta .,
Account with existing transaction can not be deleted,Konto sa postojećim transakcijama se ne može izbrisati,
Account with existing transaction cannot be converted to ledger,Konto sa postojećim transakcijama se ne može pretvoriti u glavnu knjigu,
Account {0} does not belong to company: {1},Konto {0} ne pripada preduzeću {1},
Account {0} does not belongs to company {1},Računa {0} ne pripada kompaniji {1},
Account {0} does not exist,Konto {0} ne postoji,
Account {0} does not exists,Račun {0} ne postoji,
Account {0} does not match with Company {1} in Mode of Account: {2},Računa {0} ne odgovara Company {1} u režimu računa: {2},
Account {0} has been entered multiple times,Račun {0} je ušao više puta,
Account {0} is added in the child company {1},Račun {0} se dodaje u nadređenoj kompaniji {1},
Account {0} is frozen,Konto {0} je zamrznut,
Account {0} is invalid. Account Currency must be {1},Račun {0} je nevažeća. Račun valuta mora biti {1},
Account {0}: Parent account {1} can not be a ledger,Konto {0}: Nadređeni konto {1} Ne može biti knjiga,
Account {0}: Parent account {1} does not belong to company: {2},Konto {0}: Nadređeni konto {1} ne pripada preduzeću: {2},
Account {0}: Parent account {1} does not exist,Konto {0}: Nadređeni konto {1} ne postoji,
Account {0}: You can not assign itself as parent account,Konto {0}: Ne može se označiti kao nadređeni konto samom sebi,
Account: {0} can only be updated via Stock Transactions,Račun: {0} može ažurirati samo preko Stock Transakcije,
Account: {0} with currency: {1} can not be selected,Račun: {0} s valutnom: {1} se ne mogu odabrati,
Accountant,Računovođa,
Accounting,Računovodstvo,
Accounting Entry for Asset,Računovodstveni unos za imovinu,
Accounting Entry for Stock,Računovodstvo Entry za Stock,
Accounting Entry for {0}: {1} can only be made in currency: {2},Knjiženju za {0}: {1} može se vršiti samo u valuti: {2},
Accounting Ledger,Računovodstvo Ledger,
Accounting journal entries.,Računovodstvene stavke,
Accounts,Konta,
Accounts Manager,Računi Manager,
Accounts Payable,Naplativa konta,
Accounts Payable Summary,Računi se plaćaju Sažetak,
Accounts Receivable,Konto potraživanja,
Accounts Receivable Summary,Potraživanja Pregled,
Accounts User,Računi korisnika,
Accounts table cannot be blank.,Računi stol ne može biti prazan.,
Accumulated Depreciation,Akumuliranu amortizaciju,
Accumulated Depreciation Amount,Ispravka vrijednosti iznos,
Accumulated Depreciation as on,Ispravka vrijednosti kao na,
Accumulated Monthly,akumulirani Mjesečno,
Accumulated Values,akumulirani Vrijednosti,
Accumulated Values in Group Company,Akumulirane vrijednosti u grupnoj kompaniji,
Achieved ({}),Postignuto ({}),
Action,Akcija,
Action Initialised,Akcija inicijalizirana,
Actions,Akcije,
Active,Aktivan,
Activity Cost exists for Employee {0} against Activity Type - {1},Aktivnost troškova postoji za zaposlenog {0} protiv Aktivnost Tip - {1},
Activity Cost per Employee,Aktivnost Trošak po zaposlenom,
Activity Type,Tip aktivnosti,
Actual Cost,Stvarni trošak,
Actual Delivery Date,Stvarni datum isporuke,
Actual Qty,Stvarna kol,
Actual Qty is mandatory,Stvarni Qty je obavezno,
Actual Qty {0} / Waiting Qty {1},Stvarni Količina {0} / Waiting Količina {1},
Actual Qty: Quantity available in the warehouse.,Stvarna kol: količina dostupna na skladištu.,
Actual qty in stock,Stvarne Količina na lageru,
Actual type tax cannot be included in Item rate in row {0},Stvarni tip porez ne može biti uključen u stopu stavka u nizu {0},
Add,Dodaj,
Add / Edit Prices,Dodaj / uredi cijene,
Add Comment,Dodaj komentar,
Add Customers,Dodaj Kupci,
Add Employees,Dodaj zaposlenog,
Add Item,Dodaj stavku,
Add Items,Dodaj Predmeti,
Add Leads,Add Leads,
Add Multiple Tasks,Dodajte više zadataka,
Add Row,Dodaj Row,
Add Sales Partners,Dodajte partnera za prodaju,
Add Serial No,Dodaj serijski broj,
Add Students,Dodaj Studenti,
Add Suppliers,Dodajte dobavljače,
Add Time Slots,Dodajte vremenske utore,
Add Timesheets,Dodaj Timesheets,
Add Timeslots,Dodaj Timeslots,
Add Users to Marketplace,Dodajte korisnike na Marketplace,
Add a new address,Dodajte novu adresu,
Add cards or custom sections on homepage,Dodajte kartice ili prilagođene odjeljke na početnu stranicu,
Add more items or open full form,Dodaj više stavki ili otvoreni punu formu,
Add notes,Dodajte beleške,
Add the rest of your organization as your users. You can also add invite Customers to your portal by adding them from Contacts,Dodajte ostatak organizacije kao korisnika. Također možete dodati pozvati kupce da vaš portal dodavanjem iz kontakata,
Add/Remove Recipients,Dodaj / ukloni primaoce,
Added,Dodano,
Added {0} users,Dodao je {0} korisnike,
Additional Salary Component Exists.,Postoje dodatne komponente plaće.,
Address,Adresa,
Address Line 2,Adresa - linija 2,
Address Name,Adresa ime,
Address Title,Naziv adrese,
Address Type,Tip adrese,
Administrative Expenses,Administrativni troškovi,
Administrative Officer,Administrativni službenik,
Administrator,Administrator,
Admission,upis,
Admission and Enrollment,Upis i upis,
Admissions for {0},Priznanja za {0},
Admit,Priznati,
Admitted,Prihvaćen,
Advance Amount,Iznos avansa,
Advance Payments,Avansna plaćanja,
Advance account currency should be same as company currency {0},Advance valuta valute mora biti ista kao valuta kompanije {0},
Advance amount cannot be greater than {0} {1},iznos Advance ne može biti veći od {0} {1},
Advertising,Oglašavanje,
Aerospace,Zračno-kosmički prostor,
Against,Protiv,
Against Account,Protiv računa,
Against Journal Entry {0} does not have any unmatched {1} entry,Protiv Journal Entry {0} nema premca {1} unos,
Against Journal Entry {0} is already adjusted against some other voucher,Protiv Journal Entry {0} je već prilagođen protiv nekih drugih vaučer,
Against Supplier Invoice {0} dated {1},Protiv Dobavljač fakture {0} od {1},
Against Voucher,Protiv Voucheru,
Against Voucher Type,Protiv voucher vrsti,
Age,Starost,
Age (Days),Starost (dani),
Ageing Based On,Starenje temelju On,
Ageing Range 1,Starenje Range 1,
Ageing Range 2,Starenje Range 2,
Ageing Range 3,Starenje Range 3,
Agriculture,Poljoprivreda,
Agriculture (beta),Poljoprivreda (beta),
Airline,Aviokompanija,
All Accounts,Svi računi,
All Addresses.,Sve adrese.,
All Assessment Groups,Sve procjene Grupe,
All BOMs,Svi sastavnica,
All Contacts.,Svi kontakti.,
All Customer Groups,Sve grupe kupaca,
All Day,Cijeli dan,
All Departments,Svi odjeli,
All Healthcare Service Units,Sve jedinice zdravstvene službe,
All Item Groups,Sve grupe artikala,
All Products,Svi proizvodi,
All Products or Services.,Svi proizvodi i usluge.,
All Student Admissions,Svi Student Prijemni,
All Supplier Groups,Sve grupe dobavljača,
All Supplier scorecards.,Sve ispostavne kartice.,
All Territories,Sve teritorije,
All Warehouses,Svi Skladišta,
All communications including and above this shall be moved into the new Issue,"Sve komunikacije, uključujući i iznad njih, biće premještene u novo izdanje",
All items have already been transferred for this Work Order.,Svi predmeti su već preneti za ovaj radni nalog.,
All other ITC,Svi ostali ITC,
All the mandatory Task for employee creation hasn't been done yet.,Sva obavezna zadatka za stvaranje zaposlenih još nije izvršena.,
Allocate Payment Amount,Izdvojiti plaćanja Iznos,
Allocated Amount,Izdvojena iznosu,
Allocating leaves...,Raspodjela listova ...,
Already record exists for the item {0},Već postoji zapis za stavku {0},
"Already set default in pos profile {0} for user {1}, kindly disabled default","Već je postavljeno podrazumevano u profilu pos {0} za korisnika {1}, obično je onemogućeno podrazumevano",
Alternate Item,Alternativna jedinica,
Alternative item must not be same as item code,Alternativni predmet ne sme biti isti kao kod stavke,
Amended From,Izmijenjena Od,
Amount,Iznos,
Amount After Depreciation,Iznos nakon Amortizacija,
Amount of Integrated Tax,Iznos integriranog poreza,
Amount of TDS Deducted,Iznos TDS odbijen,
Amount should not be less than zero.,Iznos ne smije biti manji od nule.,
Amount to Bill,Iznos za naplatu,
Amount {0} {1} against {2} {3},Broj {0} {1} protiv {2} {3},
Amount {0} {1} deducted against {2},Broj {0} {1} oduzeti protiv {2},
Amount {0} {1} transferred from {2} to {3},Broj {0} {1} je prešao iz {2} u {3},
Amount {0} {1} {2} {3},Broj {0} {1} {2} {3},
Amt,Amt,
"An Item Group exists with same name, please change the item name or rename the item group","Stavka Grupa postoji s istim imenom , molimo promijenite ime stavku ili preimenovati stavku grupe",
An academic term with this 'Academic Year' {0} and 'Term Name' {1} already exists. Please modify these entries and try again.,Akademski pojam sa ovim &quot;akademska godina&quot; {0} i &#39;Term Ime&#39; {1} već postoji. Molimo vas da mijenjati ove stavke i pokušati ponovo.,
An error occurred during the update process,Došlo je do greške tokom procesa ažuriranja,
"An item exists with same name ({0}), please change the item group name or rename the item","Stavka postoji s istim imenom ( {0} ) , molimo promijenite ime stavku grupe ili preimenovati stavku",
Analyst,Analitičar,
Analytics,Analitika,
Annual Billing: {0},Godišnji Billing: {0},
Anonymous,Anonimno,
Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},Još jedan rekord budžeta &#39;{0}&#39; već postoji {1} &#39;{2}&#39; i račun &#39;{3}&#39; za fiskalnu godinu {4},
Another Period Closing Entry {0} has been made after {1},Drugi period Zatvaranje Stupanje {0} je postignut nakon {1},
Another Sales Person {0} exists with the same Employee id,Još jedna osoba Sales {0} postoji s istim ID zaposlenih,
Antibiotic,Antibiotik,
Apparel & Accessories,Odjeća i modni dodaci,
Applicable For,primjenjivo za,
"Applicable if the company is SpA, SApA or SRL","Primjenjivo ako je tvrtka SpA, SApA ili SRL",
Applicable if the company is a limited liability company,Primjenjivo ako je društvo s ograničenom odgovornošću,
Applicable if the company is an Individual or a Proprietorship,Primjenjivo ako je kompanija fizička osoba ili vlasništvo,
Application of Funds (Assets),Primjena sredstava ( aktiva ),
Applied,Applied,
Appointment Confirmation,Potvrda o imenovanju,
Appointment Duration (mins),Trajanje imenovanja (min),
Appointment Type,Tip imenovanja,
Appointment {0} and Sales Invoice {1} cancelled,Imenovanje {0} i faktura za prodaju {1} otkazana,
Appointments and Encounters,Imenovanja i susreti,
Appointments and Patient Encounters,Imenovanja i susreti sa pacijentom,
Appraisal {0} created for Employee {1} in the given date range,Procjena {0} stvorena za zaposlenika {1} u određenom razdoblju,
Approving Role cannot be same as role the rule is Applicable To,Odobravanje ulogu ne mogu biti isti kao i ulogepravilo odnosi se na,
Approving User cannot be same as user the rule is Applicable To,Korisnik koji odobrava ne može biti isti kao i korisnik na kojeg se odnosi pravilo.,
"Apps using current key won't be able to access, are you sure?","Aplikacije koje koriste trenutni ključ neće moći da pristupe, da li ste sigurni?",
Are you sure you want to cancel this appointment?,Da li ste sigurni da želite da otkažete ovaj termin?,
Arrear,zaostatak,
As Examiner,Kao ispitivač,
As On Date,Kao i na datum,
As Supervisor,Kao supervizor,
As per rules 42 & 43 of CGST Rules,Prema pravilima 42 i 43 CGST pravila,
As per section 17(5),Prema odjeljku 17 (5),
Assessment,Procjena,
Assessment Criteria,Kriteriji procjene,
Assessment Group,procjena Group,
Assessment Group: ,Procena grupa:,
Assessment Plan,Plan procjene,
Assessment Plan Name,Naziv plana procene,
Assessment Report,Izveštaj o proceni,
Assessment Reports,Izveštaji o proceni,
Assessment Result,procjena rezultata,
Assessment Result record {0} already exists.,Evidencija Rezultat zapisa {0} već postoji.,
Asset,Asset,
Asset Category,Asset Kategorija,
Asset Category is mandatory for Fixed Asset item,Asset Kategorija je obavezno za Fixed stavku imovine,
Asset Maintenance,Održavanje imovine,
Asset Movement,Asset pokret,
Asset Movement record {0} created,rekord Asset pokret {0} stvorio,
Asset Name,Asset ime,
Asset Received But Not Billed,Imovina je primljena ali nije fakturisana,
Asset Value Adjustment,Podešavanje vrednosti imovine,
"Asset cannot be cancelled, as it is already {0}","Imovine ne može biti otkazan, jer je već {0}",
Asset scrapped via Journal Entry {0},Asset odbačen preko Journal Entry {0},
"Asset {0} cannot be scrapped, as it is already {1}","Asset {0} ne može biti ukinuta, jer je već {1}",
Asset {0} does not belong to company {1},Asset {0} ne pripada kompaniji {1},
Asset {0} must be submitted,Asset {0} mora biti dostavljena,
Assets,Imovina,
Assign To,Dodijeliti,
Associate,Pomoćnik,
At least one mode of payment is required for POS invoice.,Najmanje jedan način plaćanja je potreban za POS računa.,
Atleast one item should be entered with negative quantity in return document,Atleast jednu stavku treba upisati s negativnim količine za uzvrat dokumentu,
Atleast one of the Selling or Buying must be selected,Barem jedan od prodajete ili kupujete mora biti odabran,
Atleast one warehouse is mandatory,Atleast jednom skladištu je obavezno,
Attach Logo,Priložiti logo,
Attachment,Vezanost,
Attachments,Prilozi,
Attendance can not be marked for future dates,Gledatelji ne može biti označena za budući datum,
Attendance date can not be less than employee's joining date,Datum prisustvo ne može biti manji od datuma pristupanja zaposlenog,
Attendance for employee {0} is already marked,Gledatelja za zaposlenika {0} već označen,
Attendance has been marked successfully.,Posjećenost je uspješno označen.,
Attendance not submitted for {0} as {1} on leave.,Prisustvo nije dostavljeno {0} kao {1} na odsustvu.,
Attribute table is mandatory,Atribut sto je obavezno,
Attribute {0} selected multiple times in Attributes Table,Atribut {0} odabrani više puta u atributi tabeli,
Author,autor,
Authorized Signatory,Ovlašteni potpisnik,
Auto Material Requests Generated,Auto materijala Zahtjevi Generirano,
Auto Repeat,Auto Repeat,
Auto repeat document updated,Automatsko ponavljanje dokumenta je ažurirano,
Automotive,Automobilska industrija,
Available,Dostupno,
Available Leaves,Raspoložive liste,
Available Qty,Dostupno Količina,
Available Selling,Dostupna prodaja,
Available for use date is required,Potreban je datum upotrebe,
Available slots,Raspoložive slotove,
Available {0},Dostupno {0},
Available-for-use Date should be after purchase date,Datum dostupan za korištenje treba da bude nakon datuma kupovine,
Average Age,Prosječna starost,
Average Rate,Prosečna stopa,
Avg Daily Outgoing,Avg Daily Odlazni,
Avg. Buying Price List Rate,Avg. Kupovni cjenovnik,
Avg. Selling Price List Rate,Avg. Prodajna cijena cena,
Avg. Selling Rate,Prosj. Prodaja Rate,
BOM,BOM,
BOM Browser,BOM Browser,
BOM No,BOM br.,
BOM Rate,BOM Rate,
BOM Stock Report,BOM Stock Report,
BOM and Manufacturing Quantity are required,BOM i proizvodnja Količina su potrebne,
BOM does not contain any stock item,BOM ne sadrži nikakve zaliha stavka,
BOM {0} does not belong to Item {1},BOM {0} ne pripada Stavka {1},
BOM {0} must be active,BOM {0} mora biti aktivna,
BOM {0} must be submitted,BOM {0} mora biti dostavljena,
Balance,Ravnoteža,
Balance (Dr - Cr),Balans (Dr - Cr),
Balance ({0}),Balans ({0}),
Balance Qty,Bilans kol,
Balance Sheet,Završni račun,
Balance Value,Vrijednost bilance,
Balance for Account {0} must always be {1},Bilans konta {0} uvijek mora biti {1},
Bank,Banka,
Bank Account,Žiro račun,
Bank Accounts,Bankovni računi,
Bank Draft,Bank Nacrt,
Bank Name,Naziv banke,
Bank Overdraft Account,Bank Prekoračenje računa,
Bank Reconciliation,Banka pomirenje,
Bank Reconciliation Statement,Izjava banka pomirenja,
Bank Statement,Izjava banke,
Bank Statement Settings,Postavke banke,
Bank Statement balance as per General Ledger,Banka bilans po glavnoj knjizi,
Bank account cannot be named as {0},Žiro račun ne može biti imenovan kao {0},
Bank/Cash transactions against party or for internal transfer,transakcije protiv stranke ili za internu Transakcija / Cash,
Banking,Bankarstvo,
Banking and Payments,Bankarstvo i platni promet,
Barcode {0} already used in Item {1},Barkod {0} se već koristi u artiklu {1},
Barcode {0} is not a valid {1} code,Bar kod {0} nije važeći {1} kod,
Base URL,Baza URL,
Based On,Na osnovu,
Based On Payment Terms,Na osnovu uslova plaćanja,
Basic,Osnovni,
Batch,Serija,
Batch Entries,Ulazne serije,
Batch ID is mandatory,Batch ID je obavezno,
Batch Inventory,Batch zaliha,
Batch Name,Batch ime,
Batch No,Broj serije,
Batch number is mandatory for Item {0},Batch broj je obavezno za Stavka {0},
Batch {0} of Item {1} has expired.,Batch {0} od {1} Stavka je istekla.,
Batch {0} of Item {1} is disabled.,Batch {0} elementa {1} je onemogućen.,
Batch: ,Serija:,
Batches,serija,
Become a Seller,Postanite prodavac,
Bill,račun,
Bill Date,Datum računa,
Bill No,Račun br,
Bill of Materials,Bill of Materials,
Bill of Materials (BOM),Sastavnice (BOM),
Billable Hours,Sati naplate,
Billed,Naplaćeno,
Billed Amount,Naplaćeni iznos,
Billing,Naplata,
Billing Address,Adresa za naplatu,
Billing Address is same as Shipping Address,Adresa za naplatu jednaka je adresi za dostavu,
Billing Amount,Billing Iznos,
Billing Status,Status naplate,
Billing currency must be equal to either default company's currency or party account currency,Valuta za obračun mora biti jednaka valuti valute kompanije ili valute partijskog računa,
Bills raised by Suppliers.,Mjenice podigao dobavljače.,
Bills raised to Customers.,Mjenice podignuta na kupce.,
Biotechnology,Biotehnologija,
Black,Crn,
Blanket Orders from Costumers.,Narudžbe kupaca od kupaca.,
Block Invoice,Blok faktura,
Boms,Boms,
Both Trial Period Start Date and Trial Period End Date must be set,Moraju se podesiti datum početka probnog perioda i datum završetka probnog perioda,
Both Warehouse must belong to same Company,Oba skladišta moraju pripadati istom preduzeću,
Branch,Ogranak,
Broadcasting,radiodifuzija,
Brokerage,posredništvo,
Browse BOM,Browse BOM,
Budget Against,budžet protiv,
Budget List,Budžetska lista,
Budget Variance Report,Proračun varijance Prijavi,
Budget cannot be assigned against Group Account {0},Budžet se ne može dodijeliti protiv grupe računa {0},
"Budget cannot be assigned against {0}, as it's not an Income or Expense account","Budžet se ne može dodijeliti protiv {0}, jer to nije prihod ili rashod račun",
Buildings,Zgrade,
Bundle items at time of sale.,Bala stavke na vrijeme prodaje.,
Business Development Manager,Business Development Manager,
Buy,kupiti,
Buying,Nabavka,
Buying Amount,Iznos nabavke,
Buying Price List,Kupovni cjenovnik,
Buying Rate,Procenat kupovine,
"Buying must be checked, if Applicable For is selected as {0}","Kupnja treba provjeriti, ako je primjenjivo za odabrano kao {0}",
By {0},Do {0},
Bypass credit check at Sales Order ,Provjerite kreditnu obavezu na nalogu za prodaju,
C-Form records,C - Form zapisi,
C-form is not applicable for Invoice: {0},C-forma nije primjenjiv za fakture: {0},
CEO,CEO,
CESS Amount,CESS iznos,
CGST Amount,CGST Iznos,
CRM,CRM,
CWIP Account,CWIP nalog,
Calculated Bank Statement balance,Izračunato Banka bilans,
Campaign,Kampanja,
Can be approved by {0},Može biti odobren od strane {0},
"Can not filter based on Account, if grouped by Account","Ne možete filtrirati na temelju računa , ako grupirani po računu",
"Can not filter based on Voucher No, if grouped by Voucher","Ne možete filtrirati na temelju vaučer No , ako grupirani po vaučer",
"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","Ne mogu označiti zapis hroničnih bolesti ispuštenih, postoje neobračunane fakture {0}",
Can only make payment against unbilled {0},Mogu samo napraviti uplatu protiv nenaplaćenu {0},
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',"Može se odnositi red samo akotip zadužen je "" Na prethodni red Iznos 'ili' prethodnog retka Total '",
"Can't change valuation method, as there are transactions against some items which does not have it's own valuation method","Ne možete promijeniti način vrednovanja, jer postoje transakcije protiv nekih stvari koje nemaju svoj vlastiti način vrednovanja",
Can't create standard criteria. Please rename the criteria,Ne mogu napraviti standardne kriterijume. Molim preimenovati kriterijume,
Cancel,Otkaži,
Cancel Material Visit {0} before cancelling this Warranty Claim,Odustani Materijal {0} Posjeti prije otkazivanja ova garancija potraživanje,
Cancel Material Visits {0} before cancelling this Maintenance Visit,Odustani Posjeta materijala {0} prije otkazivanja ovog održavanja pohod,
Cancel Subscription,Otkaži pretplatu,
Cancel the journal entry {0} first,Prvo otpustite unos teksta {0},
Canceled,Otkazano,
"Cannot Submit, Employees left to mark attendance","Ne mogu da pošaljem, Zaposleni su ostavljeni da obilježavaju prisustvo",
Cannot be a fixed asset item as Stock Ledger is created.,Ne može biti osnovna stavka sredstva kao što je stvorena knjiga zaliha.,
Cannot cancel because submitted Stock Entry {0} exists,"Ne mogu otkazati , jer podnijela Stock Stupanje {0} postoji",
Cannot cancel transaction for Completed Work Order.,Ne mogu otkazati transakciju za Završeni radni nalog.,
Cannot cancel {0} {1} because Serial No {2} does not belong to the warehouse {3},Ne mogu da otkažem {0} {1} jer Serijski broj {2} ne pripada skladištu {3},
Cannot change Attributes after stock transaction. Make a new Item and transfer stock to the new Item,Ne mogu promijeniti atribute nakon transakcije sa akcijama. Napravite novu stavku i prenesite zalihu na novu stavku,
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,Ne možete promijeniti fiskalnu godinu datum početka i datum završetka fiskalne godine kada Fiskalna godina se sprema.,
Cannot change Service Stop Date for item in row {0},Nije moguće promeniti datum zaustavljanja usluge za stavku u redu {0},
Cannot change Variant properties after stock transaction. You will have to make a new Item to do this.,Ne mogu promijeniti svojstva varijante nakon transakcije sa akcijama. Za to ćete morati napraviti novu stavku.,
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","Ne mogu promijeniti tvrtke zadanu valutu , jer postoje neki poslovi . Transakcije mora biti otkazana promijeniti zadanu valutu .",
Cannot change status as student {0} is linked with student application {1},Ne može promijeniti status studenta {0} je povezana s primjenom student {1},
Cannot convert Cost Center to ledger as it has child nodes,"Ne može se pretvoriti troška za knjigu , kao da ima djece čvorova",
Cannot covert to Group because Account Type is selected.,"Ne mogu da konvertovanje Group, jer je izabran Account Type.",
Cannot create Retention Bonus for left Employees,Ne mogu napraviti bonus zadržavanja za ljevičke zaposlene,
Cannot create a Delivery Trip from Draft documents.,Iz Nacrta dokumenata nije moguće kreirati dostavno putovanje.,
Cannot deactivate or cancel BOM as it is linked with other BOMs,Ne može se isključiti ili otkaže BOM kao što je povezano s drugim Boms,
"Cannot declare as lost, because Quotation has been made.","Ne može proglasiti izgubili , jer citat je napravio .",
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',"Ne mogu odbiti kada kategorija je "" vrednovanje "" ili "" Vrednovanje i Total '",
Cannot deduct when category is for 'Valuation' or 'Vaulation and Total',Ne mogu odbiti kada kategorija je za &#39;Vrednovanje&#39; ili &#39;Vaulation i Total&#39;,
"Cannot delete Serial No {0}, as it is used in stock transactions","Ne možete izbrisati serijski broj {0}, koji se koristi u prodaji transakcije",
Cannot enroll more than {0} students for this student group.,Ne može upisati više od {0} studenata za ovu grupa studenata.,
Cannot produce more Item {0} than Sales Order quantity {1},Ne može proizvesti više predmeta {0} od prodajnog naloga količina {1},
Cannot promote Employee with status Left,Ne može promovirati zaposlenika sa statusom levo,
Cannot refer row number greater than or equal to current row number for this Charge type,Ne mogu se odnositi broj retka veći ili jednak trenutnom broju red za ovu vrstu Charge,
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,"Ne možete odabrati vrstu naboja kao ' na prethodnim Row Iznos ""ili"" u odnosu na prethodnu Row Ukupno ""za prvi red",
Cannot set as Lost as Sales Order is made.,Ne mogu se postaviti kao izgubljen kao prodajnog naloga je napravio .,
Cannot set authorization on basis of Discount for {0},Ne mogu postaviti odobrenje na temelju popusta za {0},
Cannot set multiple Item Defaults for a company.,Ne može se podesiti više postavki postavki za preduzeće.,
Cannot set quantity less than delivered quantity,Ne može se postaviti količina manja od isporučene količine,
Cannot set quantity less than received quantity,Ne može se postaviti količina manja od primljene količine,
Cannot set the field <b>{0}</b> for copying in variants,Ne može se postaviti polje <b>{0}</b> za kopiranje u varijantama,
Cannot transfer Employee with status Left,Ne može preneti zaposlenog sa statusom Levo,
Cannot {0} {1} {2} without any negative outstanding invoice,Ne mogu {0} {1} {2} bez ikakvih negativnih izuzetan fakture,
Capital Equipments,Kapitalni oprema,
Capital Stock,Kapitala,
Capital Work in Progress,Kapitalni rad je u toku,
Cart,Kolica,
Cart is Empty,Košarica je prazna,
Case No(s) already in use. Try from Case No {0},Slučaj Ne ( i) je već u uporabi . Pokušajte s predmetu broj {0},
Cash,Gotovina,
Cash Flow Statement,Izvještaj o novčanim tokovima,
Cash Flow from Financing,Novčani tok iz Financiranje,
Cash Flow from Investing,Novčani tok iz ulagačkih,
Cash Flow from Operations,Novčani tok iz poslovanja,
Cash In Hand,Novac u blagajni,
Cash or Bank Account is mandatory for making payment entry,Novac ili bankovni račun je obvezna za izradu ulazak plaćanje,
Cashier Closing,Zatvaranje blagajnika,
Category,Kategorija,
Category Name,Naziv kategorije,
Caution,Oprez,
Central Tax,Centralni porez,
Certification,Certifikat,
Cess,Cess,
Change Amount,Promjena Iznos,
Change Item Code,Promenite stavku,
Change Release Date,Promeni datum izdanja,
Change Template Code,Promijenite šablon kod,
Changing Customer Group for the selected Customer is not allowed.,Promena klijentske grupe za izabranog klijenta nije dozvoljena.,
Chapter,Poglavlje,
Chapter information.,Informacije o poglavlju.,
Charge of type 'Actual' in row {0} cannot be included in Item Rate,Punjenje tipa ' Stvarni ' u redu {0} ne mogu biti uključeni u točki Rate,
Chargeble,Chargeble,
Charges are updated in Purchase Receipt against each item,Naknade se ažuriraju u Kupovina Prijem protiv svaku stavku,
"Charges will be distributed proportionately based on item qty or amount, as per your selection","Naknade će se distribuirati proporcionalno na osnovu stavka količina ili iznos, po svom izboru",
Chart of Cost Centers,Grafikon troškovnih centara,
Check all,Provjerite sve,
Checkout,Provjeri,
Chemical,Hemijski,
Cheque,Ček,
Cheque/Reference No,Ček / Reference Ne,
Cheques Required,Potrebni provjeri,
Cheques and Deposits incorrectly cleared,Čekovi i depoziti pogrešno spašava,
Child Task exists for this Task. You can not delete this Task.,Zadatak za djecu postoji za ovaj zadatak. Ne možete da izbrišete ovaj zadatak.,
Child nodes can be only created under 'Group' type nodes,Dijete čvorovi se mogu kreirati samo pod &#39;Grupa&#39; tipa čvorova,
Child warehouse exists for this warehouse. You can not delete this warehouse.,skladište dijete postoji za to skladište. Ne možete brisati ovo skladište.,
Circular Reference Error,Kružna Reference Error,
City,Grad,
City/Town,Grad / Mjesto,
Clay,Clay,
Clear filters,Očistite filtere,
Clear values,Jasne vrijednosti,
Clearance Date,Razmak Datum,
Clearance Date not mentioned,Razmak Datum nije spomenuo,
Clearance Date updated,Razmak Datum ažurira,
Client,Klijent,
Client ID,ID klijenta,
Client Secret,klijent Secret,
Clinical Procedure,Klinička procedura,
Clinical Procedure Template,Obrazac kliničkog postupka,
Close Balance Sheet and book Profit or Loss.,Zatvori bilanca i knjiga dobit ili gubitak .,
Close Loan,Zatvori zajam,
Close the POS,Zatvorite POS,
Closed,Zatvoreno,
Closed order cannot be cancelled. Unclose to cancel.,Zatvorena kako se ne može otkazati. Otvarati da otkaže.,
Closing (Cr),Zatvaranje (Cr),
Closing (Dr),Zatvaranje (Dr),
Closing (Opening + Total),Zatvaranje (otvaranje + ukupno),
Closing Account {0} must be of type Liability / Equity,Zatvaranje računa {0} mora biti tipa odgovornosti / Equity,
Closing Balance,Zatvaranje ravnoteže,
Code,Šifra,
Collapse All,Skupi sve,
Color,Boja,
Colour,Boja,
Combined invoice portion must equal 100%,Kombinovani deo računa mora biti 100%,
Commercial,trgovački,
Commission,Provizija,
Commission Rate %,Procenat Komisije%,
Commission on Sales,Komisija za prodaju,
Commission rate cannot be greater than 100,Proviziju ne može biti veća od 100,
Community Forum,Community Forum,
Company (not Customer or Supplier) master.,Društvo ( ne kupaca i dobavljača ) majstor .,
Company Abbreviation,Skraćeni naziv preduzeća,
Company Abbreviation cannot have more than 5 characters,Skraćenica kompanije ne može imati više od 5 znakova,
Company Name,Naziv preduzeća,
Company Name cannot be Company,Kompanija Ime ne može biti poduzeća,
Company currencies of both the companies should match for Inter Company Transactions.,Kompanijske valute obe kompanije treba da se podudaraju za transakcije Inter preduzeća.,
Company is manadatory for company account,Kompanija je umanjena za račun kompanije,
Company name not same,Ime kompanije nije isto,
Company {0} does not exist,Kompanija {0} ne postoji,
Compensatory leave request days not in valid holidays,Dane zahtjeva za kompenzacijski odmor ne važe u valjanim praznicima,
Complaint,Žalba,
Completion Date,Završetak Datum,
Computer,Računar,
Condition,Stanje,
Configure,Konfigurišite,
Configure {0},Konfigurišite {0},
Confirmed orders from Customers.,Potvrđene narudžbe od kupaca.,
Connect Amazon with ERPNext,Povežite Amazon sa ERPNext,
Connect Shopify with ERPNext,Povežite Shopify sa ERPNext,
Connect to Quickbooks,Povežite se sa knjigama,
Connected to QuickBooks,Povezan sa QuickBooks-om,
Connecting to QuickBooks,Povezivanje na QuickBooks,
Consultation,Konsultacije,
Consultations,Konsultacije,
Consulting,savjetodavni,
Consumable,Potrošni,
Consumed,Consumed,
Consumed Amount,Consumed Iznos,
Consumed Qty,Potrošeno Kol,
Consumer Products,Consumer Products,
Contact,Kontakt,
Contact Details,Kontakt podaci,
Contact Us,Kontaktiraj nas,
Content,Sadržaj,
Content Masters,Sadržaj majstora,
Content Type,Vrsta sadržaja,
Continue Configuration,Nastavite konfiguraciju,
Contract,Ugovor,
Contract End Date must be greater than Date of Joining,Ugovor Datum završetka mora biti veći od dana ulaska u,
Contribution %,Doprinos%,
Contribution Amount,Doprinos Iznos,
Conversion factor for default Unit of Measure must be 1 in row {0},Faktor pretvorbe za zadani jedinica mjere mora biti jedan u nizu {0},
Conversion rate cannot be 0 or 1,Stopa pretvorbe ne može biti 0 ili 1,
Convert to Group,Pretvori u Grupi,
Convert to Non-Group,Pretvoriti u non-Group,
Cosmetics,Kozmetika,
Cost Center,Troška,
Cost Center Number,Broj troškovnog centra,
Cost Center and Budgeting,Troškovno središte i budžetiranje,
Cost Center is required in row {0} in Taxes table for type {1},Troška potrebno je u redu {0} poreza stolom za vrstu {1},
Cost Center with existing transactions can not be converted to group,Troška s postojećim transakcija ne može se prevesti u skupini,
Cost Center with existing transactions can not be converted to ledger,Troška s postojećim transakcija ne može pretvoriti u knjizi,
Cost Centers,Troška,
Cost Updated,Troškova Ažurirano,
Cost as on,Koštaju kao na,
Cost of Delivered Items,Troškovi isporučenih Predmeti,
Cost of Goods Sold,Troškovi prodane robe,
Cost of Issued Items,Troškovi Izdata Predmeti,
Cost of New Purchase,Troškovi New Kupovina,
Cost of Purchased Items,Troškovi Kupljene stavke,
Cost of Scrapped Asset,Troškovi Rashodovan imovine,
Cost of Sold Asset,Troškovi prodate imovine,
Cost of various activities,Troškova različitih aktivnosti,
"Could not create Credit Note automatically, please uncheck 'Issue Credit Note' and submit again","Ne mogu automatski da kreiram kreditnu poruku, molim da uklonite oznaku &#39;Izdavanje kreditne note&#39; i pošaljite ponovo",
Could not generate Secret,Nije moguće generirati tajnu,
Could not retrieve information for {0}.,Ne mogu se preuzeti podaci za {0}.,
Could not solve criteria score function for {0}. Make sure the formula is valid.,Nije moguće riješiti funkciju rezultata za {0}. Proverite da li je formula validna.,
Could not solve weighted score function. Make sure the formula is valid.,Nije moguće riješiti funkciju ponderisane ocjene. Proverite da li je formula validna.,
Could not submit some Salary Slips,Ne mogu da podnesem neke plate,
"Could not update stock, invoice contains drop shipping item.","Nije mogao ažurirati zaliha, faktura sadrži drop shipping stavke.",
Country wise default Address Templates,Država mudar zadana adresa predlošci,
Course Code: ,Šifra predmeta:,
Course Enrollment {0} does not exists,Upis na tečaj {0} ne postoji,
Course Schedule,Raspored za golf,
Course: ,Kurs:,
Cr,Cr,
Create,Stvoriti,
Create BOM,Kreirajte BOM,
Create Delivery Trip,Kreirajte putovanje isporukom,
Create Employee,Kreirajte zaposlenog,
Create Employee Records,Kreiranje zaposlenih Records,
"Create Employee records to manage leaves, expense claims and payroll","Kreiranje evidencije zaposlenih za upravljanje lišće, trošak potraživanja i platnom spisku",
Create Fee Schedule,Kreirajte raspored naknada,
Create Fees,Kreiraj naknade,
Create Inter Company Journal Entry,Kreirajte unos časopisa Inter Company,
Create Invoice,Kreirajte račun,
Create Invoices,Stvorite fakture,
Create Job Card,Kreirajte Job Card,
Create Journal Entry,Kreirajte unos u časopis,
Create Lead,Stvorite olovo,
Create Leads,Napravi Leads,
Create Maintenance Visit,Kreirajte posetu za održavanje,
Create Material Request,Kreirajte materijalni zahtjev,
Create Multiple,Kreiraj više,
Create Opening Sales and Purchase Invoices,Stvorite početne fakture za prodaju i kupovinu,
Create Payment Entries,Kreirajte uplate za plaćanje,
Create Payment Entry,Kreirajte unos plaćanja,
Create Print Format,Napravi Print Format,
Create Purchase Order,Kreirajte narudžbinu,
Create Purchase Orders,Napravi Narudžbenice,
Create Quotation,stvaranje citata,
Create Sales Invoice,Kreirajte račun za prodaju,
Create Sales Order,Kreirajte porudžbinu,
Create Sales Orders to help you plan your work and deliver on-time,Stvorite prodajne naloge za lakše planiranje posla i isporuku na vreme,
Create Sample Retention Stock Entry,Napravite unos zaliha uzoraka,
Create Student,Kreirajte Student,
Create Student Batch,Napravite studentsku grupu,
Create Student Groups,Napravi studentske grupe,
Create Supplier Quotation,Kreirajte ponudu dobavljača,
Create Tax Template,Kreirajte predložak poreza,
Create Timesheet,Napravite Timesheet,
Create User,Kreiranje korisnika,
Create Users,kreiranje korisnika,
Create Variant,Kreiraj varijantu,
Create Variants,Kreirajte Varijante,
"Create and manage daily, weekly and monthly email digests.","Stvaranje i upravljanje dnevne , tjedne i mjesečne e razgradnju .",
Create customer quotes,Napravi citati kupac,
Create rules to restrict transactions based on values.,Stvaranje pravila za ograničavanje prometa na temelju vrijednosti .,
Created {0} scorecards for {1} between: ,Napravljene {0} pokazivačke karte za {1} između:,
Creating Company and Importing Chart of Accounts,Stvaranje preduzeća i uvoz računa,
Creating Fees,Kreiranje naknada,
Creating student groups,Stvaranje grupa studenata,
Creating {0} Invoice,Kreiranje {0} fakture,
Credit,Kredit,
Credit ({0}),Kredit ({0}),
Credit Account,Kreditni račun,
Credit Balance,Credit Balance,
Credit Card,Kreditna kartica,
Credit Days cannot be a negative number,Kreditni dani ne mogu biti negativni broj,
Credit Limit,Kreditni limit,
Credit Note,Kreditne Napomena,
Credit Note Amount,Kredit Napomena Iznos,
Credit Note Issued,Kreditne Napomena Zadani,
Credit Note {0} has been created automatically,Kreditna beleška {0} je kreirana automatski,
Credit limit has been crossed for customer {0} ({1}/{2}),Kreditni limit je prešao za kupca {0} ({1} / {2}),
Creditors,Kreditori,
Criteria weights must add up to 100%,Tegovi kriterijuma moraju dodati do 100%,
Crop Cycle,Crop Cycle,
Crops & Lands,Crop &amp; Lands,
Currency Exchange must be applicable for Buying or for Selling.,Menjanje mjenjača mora biti primjenjivo za kupovinu ili prodaju.,
Currency can not be changed after making entries using some other currency,Valuta ne mogu se mijenjati nakon što unose preko neke druge valute,
Currency exchange rate master.,Majstor valute .,
Currency for {0} must be {1},Valuta za {0} mora biti {1},
Currency is required for Price List {0},Valuta je potreban za Cjenovnik {0},
Currency of the Closing Account must be {0},Valuta zatvaranja računa mora biti {0},
Currency of the price list {0} must be {1} or {2},Valuta cenovnika {0} mora biti {1} ili {2},
Currency should be same as Price List Currency: {0},Valuta mora biti ista kao cenovnik Valuta: {0},
Current Assets,Dugotrajna imovina,
Current BOM and New BOM can not be same,Trenutni troškovnik i novi troškovnik ne mogu biti isti,
Current Liabilities,Kratkoročne obveze,
Current Qty,Trenutno Količina,
Current invoice {0} is missing,Nedostaje trenutna faktura {0},
Custom HTML,Custom HTML,
Custom?,Prilagođena?,
Customer,Kupci,
Customer Addresses And Contacts,Adrese i kontakti kupaca,
Customer Contact,Kontakt kupca,
Customer Database.,Šifarnik kupaca,
Customer Group,Vrsta djelatnosti Kupaca,
Customer LPO,Korisnički LPO,
Customer LPO No.,Korisnički LPO br.,
Customer Name,Naziv kupca,
Customer POS Id,Kupac POS Id,
Customer Service,Služba za korisnike,
Customer and Supplier,Kupaca i dobavljača,
Customer is required,Kupac je obavezan,
Customer isn't enrolled in any Loyalty Program,Korisnik nije upisan u bilo koji program lojalnosti,
Customer required for 'Customerwise Discount',Kupac je potrebno za ' Customerwise Popust ',
Customer {0} does not belong to project {1},Kupac {0} ne pripada projektu {1},
Customer {0} is created.,Klijent {0} je kreiran.,
Customers in Queue,Kupci u Queue,
Customize Homepage Sections,Prilagodite odjeljke početne stranice,
Customizing Forms,Prilagođavanje Obrasci,
Daily Project Summary for {0},Dnevni rezime projekta za {0},
Daily Reminders,Dnevni podsjetnik,
Data Import and Export,Podataka uvoz i izvoz,
Data Import and Settings,Uvoz podataka i postavke,
Database of potential customers.,Baza potencijalnih kupaca.,
Date Format,Format datuma,
Date Of Retirement must be greater than Date of Joining,Datum umirovljenja mora biti veći od datuma pristupa,
Date of Birth,Datum rođenja,
Date of Birth cannot be greater than today.,Datum rođenja ne može biti veći nego što je danas.,
Date of Commencement should be greater than Date of Incorporation,Datum početka trebalo bi da bude veći od Datum osnivanja,
Date of Joining,Datum pristupa,
Date of Joining must be greater than Date of Birth,Datum pristupa mora biti veći od datuma rođenja,
Date of Transaction,Datum transakcije,
Datetime,Datum i vrijeme,
Day,dan,
Debit,Zaduženje,
Debit ({0}),Debit ({0}),
Debit Account,Zaduži račun,
Debit Note,Rashodi - napomena,
Debit Note Amount,Debitne Napomena Iznos,
Debit Note Issued,Debit Napomena Zadani,
Debit To is required,To je potrebno Debit,
Debit and Credit not equal for {0} #{1}. Difference is {2}.,Debitne i kreditne nije jednaka za {0} {1} #. Razlika je u tome {2}.,
Debtors,Dužnici,
Debtors ({0}),Dužnici ({0}),
Declare Lost,Proglasite izgubljenim,
Default Activity Cost exists for Activity Type - {0},Uobičajeno aktivnosti Troškovi postoji aktivnost Tip - {0},
Default BOM ({0}) must be active for this item or its template,Uobičajeno BOM ({0}) mora biti aktivna za ovu stavku ili njegove predložak,
Default BOM for {0} not found,Uobičajeno sastavnice za {0} nije pronađen,
Default BOM not found for Item {0} and Project {1},Uobičajeno sastavnice nije pronađen za Stavka {0} i projekt {1},
Default Letter Head,Uobičajeno Letter Head,
Default Tax Template,Podrazumevani obrazac poreza,
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.,"Uobičajeno mjerna jedinica za artikl {0} ne može se mijenjati izravno, jer ste već napravili neke transakcije (e) sa drugim UOM. Morat ćete stvoriti nove stavke koristiti drugačiji Uobičajeno UOM.",
Default Unit of Measure for Variant '{0}' must be same as in Template '{1}',Uobičajeno mjerna jedinica za varijantu &#39;{0}&#39; mora biti isti kao u obrascu &#39;{1}&#39;,
Default settings for buying transactions.,Zadane postavke za transakciju kupnje.,
Default settings for selling transactions.,Zadane postavke za transakciju prodaje.,
Default tax templates for sales and purchase are created.,Osnovani porezni predlošci za prodaju i kupovinu su stvoreni.,
Defaults,Zadani,
Defense,Obrana,
Define Project type.,Definišite tip projekta.,
Define budget for a financial year.,Definirajte budžet za finansijsku godinu.,
Define various loan types,Definirati različite vrste kredita,
Del,Del,
Delay in payment (Days),Kašnjenje u plaćanju (Dani),
Delete all the Transactions for this Company,Izbrisati sve transakcije za ovu kompaniju,
Deletion is not permitted for country {0},Brisanje nije dozvoljeno za zemlju {0},
Delivered,Isporučeno,
Delivered Amount,Isporučena Iznos,
Delivered Qty,Isporučena količina,
Delivered: {0},Isporučuje se: {0},
Delivery,Isporuka,
Delivery Date,Datum isporuke,
Delivery Note,Otpremnica,
Delivery Note {0} is not submitted,Otpremnica {0} nije potvrđena,
Delivery Note {0} must not be submitted,Otpremnica {0} ne smije biti potvrđena,
Delivery Notes {0} must be cancelled before cancelling this Sales Order,Otpremnica {0} mora biti otkazana prije poništenja ove narudžbenice,
Delivery Notes {0} updated,Beleške o isporuci {0} ažurirane,
Delivery Status,Status isporuke,
Delivery Trip,Dostava putovanja,
Delivery warehouse required for stock item {0},Isporuka skladište potrebno za zaliha stavku {0},
Department,Odjel,
Department Stores,Robne kuće,
Depreciation,Amortizacija,
Depreciation Amount,Amortizacija Iznos,
Depreciation Amount during the period,Amortizacija Iznos u periodu,
Depreciation Date,Amortizacija Datum,
Depreciation Eliminated due to disposal of assets,Amortizacija Eliminisan zbog raspolaganje imovinom,
Depreciation Entry,Amortizacija Entry,
Depreciation Method,Način Amortizacija,
Depreciation Row {0}: Depreciation Start Date is entered as past date,Redosled amortizacije {0}: Početni datum amortizacije upisuje se kao prošli datum,
Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Redosled amortizacije {0}: Očekivana vrednost nakon korisnog veka mora biti veća ili jednaka {1},
Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,Redosled amortizacije {0}: Sledeći datum amortizacije ne može biti pre datuma raspoloživog za upotrebu,
Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Redosled amortizacije {0}: Sledeći datum amortizacije ne može biti pre datuma kupovine,
Designer,Imenovatelj,
Detailed Reason,Detaljan razlog,
Details,Detalji,
Details of Outward Supplies and inward supplies liable to reverse charge,Pojedinosti o vanjskoj snabdijevanju i unutarnjim zalihama koje mogu podložiti povratnom naplatu,
Details of the operations carried out.,Detalji o poslovanju obavlja.,
Diagnosis,Dijagnoza,
Did not find any item called {0},Nije našao bilo koji predmet pod nazivom {0},
Diff Qty,Diff Količina,
Difference Account,Konto razlike,
"Difference Account must be a Asset/Liability type account, since this Stock Reconciliation is an Opening Entry","Razlika račun mora biti tip imovine / odgovornošću obzir, jer je to Stock Pomirenje je otvor za ulaz",
Difference Amount,Razlika Iznos,
Difference Amount must be zero,Razlika Iznos mora biti nula,
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.,Različite mjerne jedinice proizvoda će dovesti do ukupne pogrešne neto težine. Budite sigurni da je neto težina svakog proizvoda u istoj mjernoj jedinici.,
Direct Expenses,Direktni troškovi,
Direct Income,Direktni prihodi,
Disable,Ugasiti,
Disabled template must not be default template,predložak invaliditetom ne smije biti zadani predložak,
Disburse Loan,Zajam za isplatu,
Disbursed,Isplaceno,
Disc,disk,
Discharge,Pražnjenje,
Discount,Popust,
Discount Percentage can be applied either against a Price List or for all Price List.,Postotak popusta se može neovisno primijeniti prema jednom ili za više cjenika.,
Discount must be less than 100,Rabatt mora biti manji od 100,
Diseases & Fertilizers,Bolesti i đubriva,
Dispatch,Otpremanje,
Dispatch Notification,Obaveštenje o otpremi,
Dispatch State,Država otpreme,
Distance,Razdaljina,
Distribution,Distribucija,
Distributor,Distributer,
Dividends Paid,Isplaćene dividende,
Do you really want to restore this scrapped asset?,Da li zaista želite da vratite ovaj ukinut imovine?,
Do you really want to scrap this asset?,Da li zaista želite da ukine ove imovine?,
Do you want to notify all the customers by email?,Želite li obavijestiti sve kupce putem e-pošte?,
Doc Date,Doc Date,
Doc Name,Doc ime,
Doc Type,Doc tip,
Docs Search,Pretraga dokumenata,
Document Name,Dokument Ime,
Document Type,Tip dokumenta,
Domain,Domena,
Domains,Domena,
Done,Gotovo,
Donor,Donor,
Donor Type information.,Informacije o donatoru.,
Donor information.,Informacije o donatorima.,
Download JSON,Preuzmite JSON,
Draft,Draft,
Drop Ship,Drop Ship,
Drug,Lijek,
Due / Reference Date cannot be after {0},Zbog / Reference Datum ne može biti nakon {0},
Due Date cannot be before Posting / Supplier Invoice Date,Datum roka ne može biti prije datuma knjiženja / fakture dobavljača,
Due Date is mandatory,Due Date je obavezno,
Duplicate Entry. Please check Authorization Rule {0},Dupli unos. Provjerite pravila za autorizaciju {0},
Duplicate Serial No entered for Item {0},Dupli serijski broj je unešen za artikl {0},
Duplicate customer group found in the cutomer group table,Duplikat grupe potrošača naći u tabeli Cutomer grupa,
Duplicate entry,Dupli unos,
Duplicate item group found in the item group table,Duplikat stavka grupa naći u tabeli stavka grupa,
Duplicate roll number for student {0},Duplikat broj roll za studentske {0},
Duplicate row {0} with same {1},Dupli red {0} sa istim {1},
Duplicate {0} found in the table,Duplikat {0} pronađen u tabeli,
Duration in Days,Trajanje u danima,
Duties and Taxes,Carine i porezi,
E-Invoicing Information Missing,Informacije o e-računima nedostaju,
ERPNext Demo,ERPNext Demo,
ERPNext Settings,Postavke ERPNext,
Earliest,Najstarije,
Earnest Money,kapara,
Edit,Uredi,
Edit Publishing Details,Izmenite podatke o objavljivanju,
"Edit in full page for more options like assets, serial nos, batches etc.","Uredite na celoj stranici za više opcija kao što su imovina, serijski nos, serije itd.",
Education,Obrazovanje,
Either location or employee must be required,Moraju biti potrebne lokacije ili zaposleni,
Either target qty or target amount is mandatory,Ili meta Količina ili ciljani iznos je obvezna,
Either target qty or target amount is mandatory.,Ili meta Količina ili ciljani iznos je obavezna .,
Electrical,Električna,
Electronic Equipments,elektronske opreme,
Electronics,Elektronika,
Eligible ITC,Ispunjava uvjete ITC,
Email Account,Email nalog,
Email Address,E-mail adresa,
"Email Address must be unique, already exists for {0}","E-mail adresa mora biti jedinstvena, već postoji za {0}",
Email Digest: ,Email Digest:,
Email Reminders will be sent to all parties with email contacts,Email podsetnici će biti poslati svim stranama sa kontaktima e-pošte,
Email Sent,E-mail poslan,
Email Template,Email Template,
Email not found in default contact,E-pošta nije pronađena u podrazumevanom kontaktu,
Email sent to {0},E-mail poslan na {0},
Employee,Radnik,
Employee Advances,Napredak zaposlenih,
Employee ID,ID zaposlenika,
Employee Lifecycle,Životni vek zaposlenih,
Employee Name,Ime i prezime radnika,
Employee Promotion cannot be submitted before Promotion Date ,Promocija zaposlenih ne može se podneti pre datuma promocije,
Employee Transfer cannot be submitted before Transfer Date ,Transfer radnika ne može se podneti pre datuma prenosa,
Employee cannot report to himself.,Zaposleni ne može prijaviti samog sebe.,
Employee {0} has already applied for {1} between {2} and {3} : ,Zaposleni {0} već je prijavio za {1} između {2} i {3}:,
Employee {0} of grade {1} have no default leave policy,Zaposleni {0} razreda {1} nemaju nikakvu politiku za odlazni odmor,
Enable,omogućiti,
Enable / disable currencies.,Omogućiti / onemogućiti valute .,
Enabled,Omogućeno,
"Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Omogućavanje &#39;Koristi se za korpa &quot;, kao košarica je omogućen i treba da postoji barem jedan poreza pravilo za Košarica",
End Date,Datum završetka,
End Date can not be less than Start Date,Datum završetka ne može biti manji od početnog datuma,
End Date cannot be before Start Date.,Krajnji datum ne može biti pre početka datuma.,
End Year,do kraja godine,
End Year cannot be before Start Year,Kraja godine ne može biti prije početka godine,
End on,Završi,
Ends On date cannot be before Next Contact Date.,Završava na datum ne može biti pre Sledećeg datuma kontakta.,
Energy,Energija,
Engineer,Inženjer,
Enough Parts to Build,Dosta dijelova za izgradnju,
Enroll,upisati,
Enrolling student,upisa student,
Enrolling students,Upis studenata,
Enter depreciation details,Unesite podatke o amortizaciji,
Enter the Bank Guarantee Number before submittting.,Unesite broj garancije banke pre podnošenja.,
Enter the name of the Beneficiary before submittting.,Unesite ime Korisnika pre podnošenja.,
Enter the name of the bank or lending institution before submittting.,Pre podnošenja navedite ime banke ili kreditne institucije.,
Enter value betweeen {0} and {1},Unesite vrijednost betweeen {0} i {1},
Entertainment & Leisure,Zabava i slobodno vrijeme,
Entertainment Expenses,Zabava Troškovi,
Equity,pravičnost,
Error Log,Error Log,
Error evaluating the criteria formula,Greška u procjeni formula za kriterijume,
Error in formula or condition: {0},Greška u formuli ili stanja: {0},
Error: Not a valid id?,Greška: Ne važeći id?,
Estimated Cost,Procijenjeni troškovi,
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Čak i ako postoji više Cijene pravila s najvišim prioritetom, onda sljedeći interni prioriteti primjenjuje se:",
Event,Događaj,
Exchange Gain/Loss,Exchange dobitak / gubitak,
Exchange Rate Revaluation master.,Master revalorizacije kursa,
Exchange Rate must be same as {0} {1} ({2}),Tečajna lista moraju biti isti kao {0} {1} ({2}),
Excise Invoice,Akcizama Račun,
Execution,Izvršenje,
Executive Search,Executive Search,
Expand All,Raširi sve,
Expected Delivery Date,Očekivani rok isporuke,
Expected Delivery Date should be after Sales Order Date,Očekivani datum isporuke treba da bude nakon datuma prodaje,
Expected End Date,Očekivani Datum završetka,
Expected Hrs,Očekivana h,
Expected Start Date,Očekivani datum početka,
Expense,rashod,
Expense / Difference account ({0}) must be a 'Profit or Loss' account,Rashodi / Razlika računa ({0}) mora biti račun 'dobit ili gubitak',
Expense Account,Rashodi račun,
Expense Claim,Rashodi polaganja,
Expense Claims,Trošak potraživanja,
Expense account is mandatory for item {0},Rashodi račun je obvezna za predmet {0},
Expenses,Troškovi,
Expenses Included In Asset Valuation,Uključeni troškovi u procenu aktive,
Expenses Included In Valuation,Troškovi uključeni u vrednovanje,
Expired Batches,Istekao paketi,
Expires On,ističe,
Expiring On,Ističe se,
Expiry (In Days),Isteka (u danima),
Explore,Istražiti,
Export E-Invoices,Izvoz E-računa,
Extra Large,Ekstra veliki,
Extra Small,Extra Small,
Fail,Fail,
Failed,Nije uspio,
Failed to create website,Neuspelo je kreirati web stranicu,
Failed to install presets,Nije uspela instalirati memorije,
Failed to login,Neuspešno se prijaviti,
Failed to setup company,Nije uspela kompanija podesiti,
Failed to setup defaults,Nije uspjelo postavljanje zadanih postavki,
Failed to setup post company fixtures,Nije uspelo postaviti post kompanije,
Fax,Fax,
Fee,provizija,
Fee Created,Kreirana naknada,
Fee Creation Failed,Kreiranje Fee-a nije uspelo,
Fee Creation Pending,Čekanje stvaranja naknade,
Fee Records Created - {0},Naknada Records Kreirano - {0},
Feedback,Povratna veza,
Fees,Naknade,
Female,Ženski,
Fetch Data,Izvadite podatke,
Fetch Subscription Updates,Izvrši ažuriranje pretplate,
Fetch exploded BOM (including sub-assemblies),Fetch eksplodirala BOM (uključujući i podsklopova ),
Fetching records......,Dohvaćanje zapisa ......,
Field Name,Naziv polja,
Fieldname,"Podataka, Naziv Polja",
Fields,Polja,
"Filter Fields Row #{0}: Fieldname <b>{1}</b> must be of type ""Link"" or ""Table MultiSelect""",Red za polja filtera # {0}: Naziv polja <b>{1}</b> mora biti tipa &quot;Link&quot; ili &quot;Table MultiSelect&quot;,
Filter Total Zero Qty,Filter Total Zero Qty,
Finance Book,Finansijska knjiga,
Financial / accounting year.,Financijska / obračunska godina .,
Financial Services,financijske usluge,
Financial Statements,Finansijski izvještaji,
Financial Year,Finansijska godina,
Finish,završiti,
Finished Good,Finished Good,
Finished Good Item Code,Gotov dobar kod predmeta,
Finished Goods,Gotovih proizvoda,
Finished Item {0} must be entered for Manufacture type entry,Završio Stavka {0} mora biti unesen za tip Proizvodnja unos,
Finished product quantity <b>{0}</b> and For Quantity <b>{1}</b> cannot be different,Završena količina proizvoda <b>{0}</b> i Za količinu <b>{1}</b> ne mogu biti različite,
First Name,Ime,
"Fiscal Regime is mandatory, kindly set the fiscal regime in the company {0}","Fiskalni režim je obavezan, ljubazno postavite fiskalni režim u kompaniji {0}",
Fiscal Year,Fiskalna godina,
Fiscal Year End Date should be one year after Fiscal Year Start Date,Datum završetka fiskalne godine trebao bi biti godinu dana nakon datuma početka fiskalne godine,
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Fiskalna godina Datum početka i datum završetka fiskalne godine već su postavljeni u fiskalnoj godini {0},
Fiscal Year Start Date should be one year earlier than Fiscal Year End Date,Datum početka fiskalne godine trebao bi biti godinu dana ranije od datuma završetka fiskalne godine,
Fiscal Year {0} does not exist,Fiskalna godina {0} ne postoji,
Fiscal Year {0} is required,Fiskalna godina {0} je potrebno,
Fixed Asset,Dugotrajne imovine,
Fixed Asset Item must be a non-stock item.,Osnovnih sredstava Stavka mora biti ne-stock stavku.,
Fixed Assets,Dugotrajna imovina,
Following Material Requests have been raised automatically based on Item's re-order level,Nakon materijala Zahtjevi su automatski podignuta na osnovu nivou ponovnog reda stavke,
Following accounts might be selected in GST Settings:,Sledeći nalogi mogu biti izabrani u GST Podešavanja:,
Following course schedules were created,Stvoreni su sledeći planovi kursa,
Following item {0} is not marked as {1} item. You can enable them as {1} item from its Item master,Sledeća stavka {0} nije označena kao {1} stavka. Možete ih omogućiti kao {1} stavku iz glavnog poglavlja,
Following items {0} are not marked as {1} item. You can enable them as {1} item from its Item master,Sledeće stavke {0} nisu označene kao {1} stavka. Možete ih omogućiti kao {1} stavku iz glavnog poglavlja,
"Food, Beverage & Tobacco","Hrana , piće i duhan",
For,Za,
"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.","Za &#39;proizvoda Bundle&#39; stavki, Magacin, serijski broj i serijski broj smatrat će se iz &#39;Pakiranje List&#39; stol. Ako Skladište i serijski broj su isti za sve pakovanje stavke za bilo &#39;Bundle proizvoda&#39; stavku, te vrijednosti mogu se unijeti u glavnom Stavka stola, vrijednosti će se kopirati u &#39;Pakiranje List&#39; stol.",
For Quantity (Manufactured Qty) is mandatory,Za Količina (Proizvedeno Qty) je obavezno,
For Supplier,za Supplier,
For Warehouse,Za galeriju,
For Warehouse is required before Submit,Jer je potrebno Warehouse prije Podnijeti,
"For an item {0}, quantity must be negative number","Za stavku {0}, količina mora biti negativna",
"For an item {0}, quantity must be positive number","Za stavku {0}, količina mora biti pozitivni broj",
"For job card {0}, you can only make the 'Material Transfer for Manufacture' type stock entry",Za radnu karticu {0} možete izvršiti samo unos tipa „Prijenos materijala za proizvodnju“,
"For row {0} in {1}. To include {2} in Item rate, rows {3} must also be included","Za red {0} u {1}. Uključiti {2} u tačka stope, redova {3} mora biti uključena",
For row {0}: Enter Planned Qty,Za red {0}: Unesite planirani broj,
"For {0}, only credit accounts can be linked against another debit entry","Za {0}, samo kredit računa može biti povezan protiv drugog ulaska debit",
"For {0}, only debit accounts can be linked against another credit entry","Za {0}, samo debitne račune mogu povezati protiv druge kreditne unos",
Forum Activity,Aktivnost foruma,
Free item code is not selected,Besplatni kod artikla nije odabran,
Freight and Forwarding Charges,Teretni i Forwarding Optužbe,
Frequency,frekvencija,
Friday,Petak,
From,Od,
From Address 1,Od adrese 1,
From Address 2,Od adrese 2,
From Currency and To Currency cannot be same,Od valute i valuta ne mogu biti isti,
From Date and To Date lie in different Fiscal Year,Od datuma i do datuma leži u različitim fiskalnim godinama,
From Date cannot be greater than To Date,Od datuma ne može biti veća od To Date,
From Date must be before To Date,Od datuma mora biti prije do danas,
From Date should be within the Fiscal Year. Assuming From Date = {0},Od datuma trebao biti u fiskalnoj godini. Uz pretpostavku Od datuma = {0},
From Datetime,Od datuma i vremena,
From Delivery Note,Od otpremnici,
From Fiscal Year,Od fiskalne godine,
From GSTIN,Iz GSTIN-a,
From Party Name,Od imena partije,
From Pin Code,Od PIN-a,
From Place,From Place,
From Range has to be less than To Range,Od opseg mora biti manji od u rasponu,
From State,Od države,
From Time,S vremena,
From Time Should Be Less Than To Time,Od vremena bi trebalo biti manje od vremena,
From Time cannot be greater than To Time.,Od vremena ne može biti veća nego vremena.,
"From a supplier under composition scheme, Exempt and Nil rated","Od dobavljača prema shemi kompozicije, Oslobođeni i Nil",
From and To dates required,Od i Do datuma zahtijevanih,
From value must be less than to value in row {0},Od vrijednosti mora biti manje nego vrijednosti u redu {0},
From {0} | {1} {2},Od {0} | {1} {2},
Fulfillment,Ispunjenje,
Full,Pun,
Full Name,Ime i prezime,
Fully Depreciated,potpuno je oslabio,
Furnitures and Fixtures,Furnitures i raspored,
"Further accounts can be made under Groups, but entries can be made against non-Groups","Dalje računa može biti pod Grupe, ali unosa može biti protiv ne-Grupe",
Further cost centers can be made under Groups but entries can be made against non-Groups,"Dalje troška mogu biti pod Grupe, ali unosa može biti protiv ne-Grupe",
Further nodes can be only created under 'Group' type nodes,"Daljnje čvorovi mogu se samo stvorio pod ""Grupa"" tipa čvorova",
GSTIN,GSTIN,
GSTR3B-Form,GSTR3B-Obrazac,
Gain/Loss on Asset Disposal,Dobit / Gubitak imovine Odlaganje,
Gantt Chart,Gantogram,
Gantt chart of all tasks.,Gantogram svih zadataka.,
Gender,Rod,
General,Opšti,
General Ledger,Glavna knjiga,
Generate Material Requests (MRP) and Work Orders.,Generiranje zahteva za materijal (MRP) i radnih naloga.,
Generate Secret,Generiraj tajnu,
Get Invocies,Nabavite račune,
Get Invoices,Dobijajte račune,
Get Invoices based on Filters,Nabavite fakture na temelju filtera,
Get Items from BOM,Kreiraj proizvode od sastavnica (BOM),
Get Items from Healthcare Services,Uzmite predmete iz zdravstvenih usluga,
Get Items from Prescriptions,Dobijte stavke iz recepta,
Get Items from Product Bundle,Saznajte Predmeti od Bundle proizvoda,
Get Suppliers,Uzmite dobavljača,
Get Suppliers By,Uzmite dobavljača,
Get Updates,Get Updates,
Get customers from,Uzmite kupce,
Get from Patient Encounter,Izlazite iz susreta sa pacijentom,
Getting Started,Počinjemo,
GitHub Sync ID,GitHub Sync ID,
Global settings for all manufacturing processes.,Global postavke za sve proizvodne procese.,
Go to the Desktop and start using ERPNext,Idite na radnu površinu i početi koristiti ERPNext,
GoCardless SEPA Mandate,GoCardless SEPA Mandat,
GoCardless payment gateway settings,GoCardless postavke gateway plaćanja,
Goal and Procedure,Cilj i postupak,
Goals cannot be empty,Ciljevi ne može biti prazan,
Goods In Transit,Roba u tranzitu,
Goods Transferred,Prenesena roba,
Goods and Services Tax (GST India),Poreska dobara i usluga (PDV Indija),
Goods are already received against the outward entry {0},Roba je već primljena prema vanjskom ulazu {0},
Government,Vlada,
Grand Total,Ukupno za platiti,
Grant,Grant,
Grant Application,Grant aplikacija,
Grant Leaves,Grant Leaves,
Grant information.,Grant informacije.,
Grocery,Trgovina prehrambenom robom,
Gross Profit,Bruto dobit,
Gross Profit %,Bruto dobit%,
Gross Profit / Loss,Bruto dobit / gubitak,
Gross Purchase Amount,Bruto Kupovina Iznos,
Gross Purchase Amount is mandatory,Bruto Kupovina Iznos je obavezno,
Group by Account,Grupa po računu,
Group by Party,Grupno po stranci,
Group by Voucher,Grupa po jamcu,
Group by Voucher (Consolidated),Grupa po vaučerima (konsolidovani),
Group node warehouse is not allowed to select for transactions,skladište Group čvor nije dozvoljeno da izaberete za transakcije,
Group to Non-Group,Grupa Non-grupa,
Group your students in batches,Grupa svojim učenicima u serijama,
Groups,Grupe,
Guardian1 Email ID,Guardian1 Email ID,
Guardian1 Mobile No,Guardian1 Mobile Nema,
Guardian1 Name,Guardian1 ime,
Guardian2 Email ID,Guardian2 Email ID,
Guardian2 Mobile No,Guardian2 Mobile Nema,
Guardian2 Name,Guardian2 ime,
HR Manager,Šef ljudskih resursa,
HSN,HSN,
HSN/SAC,HSN / SAC,
Half Yearly,Polu godišnji,
Half-Yearly,Polugodišnje,
Hardware,Hardver,
Head of Marketing and Sales,Voditelj marketinga i prodaje,
Health Care,Zdravstvena zaštita,
Healthcare,Zdravstvena zaštita,
Healthcare (beta),Zdravstvo (beta),
Healthcare Practitioner,Zdravstveni lekar,
Healthcare Practitioner not available on {0},Zdravstveni radnik nije dostupan na {0},
Healthcare Practitioner {0} not available on {1},Zdravstveni radnik {0} nije dostupan na {1},
Healthcare Service Unit,Jedinica za zdravstvenu zaštitu,
Healthcare Service Unit Tree,Jedinica za zdravstvenu zaštitu,
Healthcare Service Unit Type,Vrsta jedinice za zdravstvenu zaštitu,
Healthcare Services,Zdravstvene usluge,
Healthcare Settings,Postavke zdravstvene zaštite,
Help Results for,Pomoć rezultata za,
High,Visok,
High Sensitivity,Visoka osetljivost,
Hold,Zadrži,
Hold Invoice,Držite fakturu,
Holiday,Odmor,
Holiday List,Lista odmora,
Hotel Rooms of type {0} are unavailable on {1},Sobe Hotela tipa {0} nisu dostupne na {1},
Hotels,Hoteli,
Hourly,Po satu,
Hours,Hours,
How Pricing Rule is applied?,Kako se primjenjuje pravilo cijena?,
Hub Category,Glavna kategorija,
Hub Sync ID,Hub Sync ID,
Human Resource,Human Resource,
Human Resources,Ljudski resursi,
IFSC Code,IFSC kod,
IGST Amount,IGST Iznos,
IP Address,IP adresa,
ITC Available (whether in full op part),Dostupan ITC (bilo u cjelini op. Dio),
ITC Reversed,ITC preokrenut,
Identifying Decision Makers,Identifikovanje donosilaca odluka,
"If Auto Opt In is checked, then the customers will be automatically linked with the concerned Loyalty Program (on save)","Ako se proveri automatsko uključivanje, klijenti će automatski biti povezani sa dotičnim programom lojalnosti (pri uštedi)",
"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Ako više Cijene pravila i dalje prevladavaju, korisnici su zamoljeni da postavite prioritet ručno riješiti sukob.",
"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.","Ako je izabrano odredište za cenu &quot;Rate&quot;, on će prepisati cenovnik. Pravilnost cena je konačna stopa, tako da se ne bi trebao koristiti dodatni popust. Stoga, u transakcijama kao što su Prodajni nalog, Narudžbenica i slično, to će biti preuzeto u polju &#39;Rate&#39;, a ne &#39;Polje cijena&#39;.",
"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.","Ako su dva ili više Pravila cijene se nalaze na osnovu gore uvjetima, Prioritet se primjenjuje. Prioritet je broj od 0 do 20, a zadana vrijednost je nula (prazno). Veći broj znači da će imati prednost, ako postoji više pravila cijenama s istim uslovima.",
"If unlimited expiry for the Loyalty Points, keep the Expiry Duration empty or 0.","Ako je neograničen rok isticanja za Loyalty Bodove, zadržite Trajanje isteka prazne ili 0.",
"If you have any questions, please get back to us.","Ako imate bilo kakvih pitanja, molimo Vas da se vratimo na nas.",
Ignore Existing Ordered Qty,Zanemarite postojeći naručeni broj,
Image,Slika,
Image View,Prikaz slike,
Import Data,Uvoz podataka,
Import Day Book Data,Uvezi podatke o knjizi dana,
Import Log,Uvoz Prijavite,
Import Master Data,Uvezi glavne podatke,
Import in Bulk,Uvoz u rinfuzi,
Import of goods,Uvoz robe,
Import of services,Uvoz usluga,
Importing Items and UOMs,Uvoz predmeta i UOM-ova,
Importing Parties and Addresses,Uvoz stranaka i adresa,
In Maintenance,U održavanju,
In Production,U proizvodnji,
In Qty,u kol,
In Stock Qty,Na skladištu Količina,
In Stock: ,Na raspolaganju:,
In Value,u vrijednost,
"In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","U slučaju višeslojnog programa, Korisnici će automatski biti dodeljeni za dotičnu grupu po njihovom trošenju",
Inactive,Neaktivan,
Incentives,Poticaji,
Include Default Book Entries,Uključite zadane unose knjiga,
Include Exploded Items,Uključite eksplodirane predmete,
Include POS Transactions,Uključite POS transakcije,
Include UOM,Uključite UOM,
Included in Gross Profit,Uključeno u bruto dobit,
Income,Prihod,
Income Account,Konto prihoda,
Income Tax,Porez na dohodak,
Incoming,Dolazni,
Incoming Rate,Dolazni Stopa,
Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Neispravan broj glavnu knjigu unose naći. Možda ste odabrali krivi račun u transakciji.,
Increment cannot be 0,Prirast ne može biti 0,
Increment for Attribute {0} cannot be 0,Prirast za Atributi {0} ne može biti 0,
Indirect Expenses,Neizravni troškovi,
Indirect Income,Neizravni dohodak,
Individual,Pojedinac,
Ineligible ITC,Neprihvatljiv ITC,
Initiated,Inicirao,
Inpatient Record,Zapisnik o stacionarnom stanju,
Insert,Insert,
Installation Note,Napomena instalacije,
Installation Note {0} has already been submitted,Napomena instalacije {0} je već potvrđena,
Installation date cannot be before delivery date for Item {0},Datum Instalacija ne može biti prije datuma isporuke za točke {0},
Installing presets,Instaliranje podešavanja,
Institute Abbreviation,Institut Skraćenica,
Institute Name,Institut ime,
Instructor,Instruktor,
Insufficient Stock,nedovoljna Stock,
Insurance Start date should be less than Insurance End date,Datum osiguranje Početak bi trebao biti manji od datuma osiguranje Kraj,
Integrated Tax,Integrirani porez,
Inter-State Supplies,Međudržavne potrepštine,
Interests,Interesi,
Internet Publishing,Internet izdavaštvo,
Intra-State Supplies,Unutarnje države,
Introduction,Uvod,
Invalid Attribute,Invalid Atributi,
Invalid Blanket Order for the selected Customer and Item,Neveljavna porudžbina za odabrani korisnik i stavku,
Invalid Company for Inter Company Transaction.,Nevažeća kompanija za transakciju između kompanija.,
Invalid GSTIN! A GSTIN must have 15 characters.,Nevažeći GSTIN! GSTIN mora imati 15 znakova.,
Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,Nevažeći GSTIN! Prve dvije znamenke GSTIN-a trebale bi se podudarati sa državnim brojem {0}.,
Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,Nevažeći GSTIN! Uneseni unos ne odgovara formatu GSTIN-a.,
Invalid Posting Time,Neispravno vreme slanja poruka,
Invalid attribute {0} {1},Nevažeći atributa {0} {1},
Invalid quantity specified for item {0}. Quantity should be greater than 0.,Navedena je pogrešna količina za proizvod {0}. Količina treba biti veći od 0.,
Invalid reference {0} {1},Invalid referentni {0} {1},
Invalid {0},Invalid {0},
Invalid {0} for Inter Company Transaction.,Nevažeći {0} za transakciju Inter kompanije.,
Invalid {0}: {1},{1}: Invalid {0},
Inventory,Inventar,
Investment Banking,Investicijsko bankarstvo,
Investments,Investicije,
Invoice,Faktura,
Invoice Created,Izrada fakture,
Invoice Discounting,Popust na fakture,
Invoice Patient Registration,Registracija računa pacijenta,
Invoice Posting Date,Račun Datum knjiženja,
Invoice Type,Tip fakture,
Invoice already created for all billing hours,Račun je već kreiran za sva vremena plaćanja,
Invoice can't be made for zero billing hour,Faktura ne može biti napravljena za nultu cenu fakturisanja,
Invoice {0} no longer exists,Račun {0} više ne postoji,
Invoiced,Fakturisano,
Invoiced Amount,Fakturisanog,
Invoices,Fakture,
Invoices for Costumers.,Računi za kupce.,
Inward supplies from ISD,Ulazne zalihe od ISD-a,
Inward supplies liable to reverse charge (other than 1 & 2 above),Unutarnje zalihe podložne povratnom naboju (osim 1 i 2 gore),
Is Active,Je aktivan,
Is Default,Je podrazumjevani,
Is Existing Asset,Je Postojeći imovine,
Is Frozen,Je zamrznut,
Is Group,Is Group,
Issue,Tiketi,
Issue Material,Tiketi - materijal,
Issued,Izdao,
Issues,Pitanja,
It is needed to fetch Item Details.,Potrebno je da se donese Stavka Detalji.,
Item,Artikl,
Item 1,Stavku 1,
Item 2,Stavku 2,
Item 3,Stavka 3,
Item 4,Stavka 4,
Item 5,Stavka 5,
Item Cart,stavka Košarica,
Item Code,Šifra artikla,
Item Code cannot be changed for Serial No.,Kod artikla ne može se mijenjati za serijski broj.,
Item Code required at Row No {0},Kod artikla je potreban u redu broj {0},
Item Description,Opis artikla,
Item Group,Grupa artikla,
Item Group Tree,Raspodjela grupe artikala,
Item Group not mentioned in item master for item {0},Stavka artikla se ne spominje u master artiklu za artikal {0},
Item Name,Naziv predmeta,
Item Price added for {0} in Price List {1},Stavka Cijena je dodao za {0} u {1} Cjenik,
"Item Price appears multiple times based on Price List, Supplier/Customer, Currency, Item, UOM, Qty and Dates.","Stavka Cena se pojavljuje više puta na osnovu Cenovnika, dobavljača / kupca, valute, stavke, UOM, kola i datuma.",
Item Price updated for {0} in Price List {1},Artikal Cijena ažuriranje za {0} u Cjenik {1},
Item Row {0}: {1} {2} does not exist in above '{1}' table,Stavka Red {0}: {1} {2} ne postoji iznad tabele &quot;{1}&quot;,
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,Stavka Porezna Row {0} mora imati račun tipa poreza ili prihoda i rashoda ili naplativ,
Item Template,Šablon predmeta,
Item Variant Settings,Postavke varijante postavki,
Item Variant {0} already exists with same attributes,Stavka Variant {0} već postoji s istim atributima,
Item Variants,Stavka Varijante,
Item Variants updated,Ažurirane su varijante predmeta,
Item has variants.,Stavka ima varijante.,
Item must be added using 'Get Items from Purchase Receipts' button,Stavka mora biti dodan pomoću 'Get stavki iz Kupovina Primici' gumb,
Item valuation rate is recalculated considering landed cost voucher amount,Stavka stopa vrednovanja izračunava se razmatra sletio troškova voucher iznosu,
Item variant {0} exists with same attributes,Stavka varijanta {0} postoji sa istim atributima,
Item {0} does not exist,Artikal {0} ne postoji,
Item {0} does not exist in the system or has expired,Artikal {0} ne postoji u sustavu ili je istekao,
Item {0} has already been returned,Artikal {0} je već vraćen,
Item {0} has been disabled,Stavka {0} je onemogućena,
Item {0} has reached its end of life on {1},Artikal {0} je dosegao svoj rok trajanja na {1},
Item {0} ignored since it is not a stock item,Artikal {0} se ignorira budući da nije skladišni artikal,
"Item {0} is a template, please select one of its variants","Stavka {0} je predložak, odaberite jednu od njegovih varijanti",
Item {0} is cancelled,Artikal {0} je otkazan,
Item {0} is disabled,Stavka {0} je onemogućeno,
Item {0} is not a serialized Item,Stavka {0} nijeserijaliziranom predmeta,
Item {0} is not a stock Item,Stavka {0} nijestock Stavka,
Item {0} is not active or end of life has been reached,Stavka {0} nije aktivan ili kraj života je postignut,
Item {0} is not setup for Serial Nos. Check Item master,"Stavka {0} nije dobro postavljen za gospodara , serijski brojevi Provjera",
Item {0} is not setup for Serial Nos. Column must be blank,Stavka {0} nije setup za serijski brojevi Stupac mora biti prazan,
Item {0} must be a Fixed Asset Item,Stavka {0} mora biti osnovna sredstva stavka,
Item {0} must be a Sub-contracted Item,Stavka {0} mora bitisklopljen ugovor artikla,
Item {0} must be a non-stock item,Stavka {0} mora biti ne-stock stavka,
Item {0} must be a stock Item,Stavka {0} mora bitistock Stavka,
Item {0} not found,Stavka {0} nije pronađena,
Item {0} not found in 'Raw Materials Supplied' table in Purchase Order {1},Stavka {0} nije pronađena u &#39;sirovine Isporučuje&#39; sto u narudžbenice {1},
Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,Stavka {0}: {1} Naručena količina ne može biti manji od minimalnog bi Količina {2} (iz točke).,
Item: {0} does not exist in the system,Detaljnije: {0} ne postoji u sustavu,
Items,Artikli,
Items Filter,Filter predmeta,
Items and Pricing,Stavke i cijene,
Items for Raw Material Request,Artikli za zahtjev za sirovine,
Job Card,Job Card,
Job card {0} created,Kartica za posao {0} kreirana,
Join,pristupiti,
Journal Entries {0} are un-linked,Journal unosi {0} su un-povezani,
Journal Entry,Časopis Stupanje,
Journal Entry {0} does not have account {1} or already matched against other voucher,Journal Entry {0} nema obzir {1} ili su već usklađene protiv drugih vaučer,
Kanban Board,Kanban odbora,
Key Reports,Ključni izvještaji,
LMS Activity,LMS aktivnost,
Lab Test,Lab Test,
Lab Test Report,Izvještaj o laboratorijskom testu,
Lab Test Sample,Primjer laboratorijskog testa,
Lab Test Template,Lab test šablon,
Lab Test UOM,Lab Test UOM,
Lab Tests and Vital Signs,Laboratorijski testovi i Vitalni Znaci,
Lab result datetime cannot be before testing datetime,Datetime rezultata laboratorije ne može biti pre testiranja datetime,
Lab testing datetime cannot be before collection datetime,Labiranje testiranja datotime ne može biti pre snimanja datetime,
Label,Oznaka,
Laboratory,Laboratorija,
Language Name,Jezik,
Large,Veliki,
Last Communication,Zadnje Komunikacija,
Last Communication Date,Zadnje Komunikacija Datum,
Last Name,Prezime,
Last Order Amount,Last Order Iznos,
Last Order Date,Last Order Datum,
Last Purchase Price,Poslednja cena otkupa,
Last Purchase Rate,Zadnja kupovna cijena,
Latest,Najnovije,
Latest price updated in all BOMs,Posljednja cijena ažurirana u svim BOM,
Lead,Potencijalni kupac,
Lead Count,Lead Count,
Lead Owner,Vlasnik Lead-a,
Lead Owner cannot be same as the Lead,Olovo Vlasnik ne može biti isti kao olovo,
Lead Time Days,Potencijalni kupac - ukupno dana,
Lead to Quotation,Potencijalni kupac do ponude,
"Leads help you get business, add all your contacts and more as your leads","Leads biste se lakše poslovanje, dodati sve svoje kontakte i još kao vodi",
Learn,Učiti,
Leave Management,Ostavite Management,
Leave and Attendance,Ostavite i posjećenost,
Leave application {0} already exists against the student {1},Izlaz iz aplikacije {0} već postoji protiv učenika {1},
Leaves has been granted sucessfully,Lišće je uspešno izdato,
Leaves must be allocated in multiples of 0.5,"Listovi moraju biti dodijeljeno u COMBI 0,5",
Ledger,Glavna knjiga,
Legal,Pravni,
Legal Expenses,Pravni troškovi,
Letter Head,Zaglavlje,
Letter Heads for print templates.,Zaglavlja za ispis predložaka.,
Level,Nivo,
Liability,Odgovornost,
License,Licenca,
Limit,granica,
Limit Crossed,Limit Crossed,
Link to Material Request,Link na zahtev za materijal,
List of all share transactions,Spisak svih dionica transakcija,
List of available Shareholders with folio numbers,Spisak dostupnih akcionara sa brojevima folije,
Loading Payment System,Uplata platnog sistema,
Loan,Loan,
Loan Start Date and Loan Period are mandatory to save the Invoice Discounting,Datum početka i Period zajma su obavezni da biste spremili popust na računu,
Loans (Liabilities),Zajmovi (pasiva),
Loans and Advances (Assets),Zajmovi i predujmovi (aktiva),
Local,Lokalno,
Log,Prijavite,
Logs for maintaining sms delivery status,Dnevnici za održavanje sms statusa isporuke,
Lost,Izgubljen,
Lost Reasons,Izgubljeni razlozi,
Low,Nizak,
Low Sensitivity,Niska osetljivost,
Lower Income,Niži Prihodi,
Loyalty Amount,Lojalnost,
Loyalty Point Entry,Ulaz lojalnosti,
Loyalty Points,Točke lojalnosti,
"Loyalty Points will be calculated from the spent done (via the Sales Invoice), based on collection factor mentioned.","Točke lojalnosti će se izračunati iz potrošene (preko fakture za prodaju), na osnovu navedenog faktora sakupljanja.",
Loyalty Points: {0},Bodovi lojalnosti: {0},
Loyalty Program,Program lojalnosti,
Main,Glavni,
Maintenance,Održavanje,
Maintenance Log,Dnevnik održavanja,
Maintenance Manager,Održavanje Manager,
Maintenance Schedule,Raspored održavanja,
Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',"Raspored održavanja ne stvara za sve stavke . Molimo kliknite na ""Generiraj raspored '",
Maintenance Schedule {0} exists against {1},Održavanje Raspored {0} postoji protiv {1},
Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Raspored održavanja {0} mora biti otkazana prije poništenja ovu prodajnog naloga,
Maintenance Status has to be Cancelled or Completed to Submit,Status održavanja mora biti poništen ili završen za slanje,
Maintenance User,Održavanje korisnika,
Maintenance Visit,Posjeta za odrzavanje,
Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Posjeta za odrzavanje {0} mora biti otkazana prije otkazivanja ove ponude,
Maintenance start date can not be before delivery date for Serial No {0},Održavanje datum početka ne može biti prije datuma isporuke za rednim brojem {0},
Make,Napraviti,
Make Payment,izvrši plaćanje,
Make project from a template.,Napravite projekat iz predloška.,
Making Stock Entries,Izrada Stock unosi,
Male,Muški,
Manage Customer Group Tree.,Upravljanje vrstama djelatnosti,
Manage Sales Partners.,Upravljanje prodajnih partnera.,
Manage Sales Person Tree.,Menadzeri prodaje - Upravljanje.,
Manage Territory Tree.,Spisak teritorija - upravljanje.,
Manage your orders,Upravljanje narudžbe,
Management,upravljanje,
Manager,Menadžer,
Managing Projects,Upravljanje projektima,
Managing Subcontracting,Upravljanje Subcontracting,
Mandatory,Obavezan,
Mandatory field - Academic Year,Obavezna polja - akademska godina,
Mandatory field - Get Students From,Obavezna polja - Get Učenici iz,
Mandatory field - Program,Obavezna polja - Program,
Manufacture,Proizvodnja,
Manufacturer,Proizvođač,
Manufacturer Part Number,Proizvođač Broj dijela,
Manufacturing,Proizvodnja,
Manufacturing Quantity is mandatory,Proizvodnja Količina je obvezno,
Mapping,Mapiranje,
Mapping Type,Tip mapiranja,
Mark Absent,Mark Odsutan,
Mark Half Day,Mark Half Day,
Mark Present,Mark Present,
Marketing,Marketing,
Marketing Expenses,Troškovi marketinga,
Marketplace,Tržište,
Marketplace Error,Greška na tržištu,
Masters,Majstori,
Match Payments with Invoices,Meč plaćanja fakture,
Match non-linked Invoices and Payments.,Klađenje na ne-povezane faktura i plaćanja.,
Material,Materijal,
Material Consumption,Potrošnja materijala,
Material Consumption is not set in Manufacturing Settings.,Potrošnja materijala nije podešena u proizvodnim postavkama.,
Material Receipt,Materijal Potvrda,
Material Request,Materijal zahtjev,
Material Request Date,Materijal Upit Datum,
Material Request No,Materijal Zahtjev Ne,
"Material Request not created, as quantity for Raw Materials already available.","Zahtjev za materijal nije kreiran, jer je količina za sirovine već dostupna.",
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Materijal Zahtjev maksimalno {0} može biti za točku {1} od prodajnog naloga {2},
Material Request to Purchase Order,Materijal Zahtjev za narudžbenice,
Material Request {0} is cancelled or stopped,Materijal Zahtjev {0} je otkazan ili zaustavljen,
Material Request {0} submitted.,Podnet je materijalni zahtjev {0}.,
Material Transfer,Materijal transfera,
Material Transferred,Prenos materijala,
Material to Supplier,Materijal dobavljaču,
Max discount allowed for item: {0} is {1}%,Maksimalni popust dopušteno za predmet: {0} je {1}%,
Max: {0},Max: {0},
Maximum Samples - {0} can be retained for Batch {1} and Item {2}.,Maksimalni uzorci - {0} mogu biti zadržani za seriju {1} i stavku {2}.,
Maximum Samples - {0} have already been retained for Batch {1} and Item {2} in Batch {3}.,Maksimalni uzorci - {0} su već zadržani za Batch {1} i Item {2} u Batch {3}.,
Maximum discount for Item {0} is {1}%,Maksimalni popust za stavku {0} je {1}%,
Medical Code,Medicinski kod,
Medical Code Standard,Medical Code Standard,
Medical Department,Medicinski odjel,
Medical Record,Medicinski zapis,
Medium,Srednji,
Meeting,Sastanak,
Member Activity,Član Aktivnost,
Member ID,Član ID,
Member Name,Ime člana,
Member information.,Informacije o članovima.,
Membership,Članstvo,
Membership Details,Detalji o članstvu,
Membership ID,ID članstva,
Membership Type,Tip članstva,
Memebership Details,Memebership Details,
Memebership Type Details,Detalji o tipu Memebership,
Merge,Spoji se,
Merge Account,Merge Account,
Merge with Existing Account,Spoji se sa postojećim računom,
"Merging is only possible if following properties are same in both records. Is Group, Root Type, Company","Spajanje je moguće samo ako sljedeće osobine su iste u oba zapisa. Grupa je, Root Tip, Društvo",
Message Examples,Primjeri poruka,
Message Sent,Poruka je poslana,
Method,Način,
Middle Income,Srednji Prihodi,
Middle Name,Srednje ime,
Middle Name (Optional),Krsno ime (opcionalno),
Min Amt can not be greater than Max Amt,Min Amt ne može biti veći od Max Amt,
Min Qty can not be greater than Max Qty,Min Kol ne može biti veći od Max Kol,
Minimum Lead Age (Days),Minimalna Olovo Starost (Dana),
Miscellaneous Expenses,Razni troškovi,
Missing Currency Exchange Rates for {0},Nedostaje Valuta Tečaj za {0},
Missing email template for dispatch. Please set one in Delivery Settings.,Nedostajući e-mail predložak za otpremu. Molimo vas da podesite jednu od postavki isporuke.,
"Missing value for Password, API Key or Shopify URL","Nedostajuća vrijednost za lozinku, API ključ ili Shopify URL",
Mode of Payment,Način plaćanja,
Mode of Payments,Način plaćanja,
Mode of Transport,Način transporta,
Mode of Transportation,Način prijevoza,
Model,Model,
Moderate Sensitivity,Umerena osetljivost,
Monday,Ponedjeljak,
Monthly,Mjesečno,
Monthly Distribution,Mjesečni Distribucija,
More,Više,
More Information,Više informacija,
More...,Više ...,
Motion Picture & Video,Motion Picture & Video,
Move,Potez,
Move Item,Move Stavka,
Multi Currency,Multi Valuta,
Multiple Item prices.,Više cijene stavke.,
Multiple Loyalty Program found for the Customer. Please select manually.,Višestruki program lojalnosti pronađen za klijenta. Molimo izaberite ručno.,
"Multiple Price Rules exists with same criteria, please resolve conflict by assigning priority. Price Rules: {0}","Više pravila Cijena postoji sa istim kriterijima, molimo vas da riješe sukob dodjelom prioriteta. Cijena pravila: {0}",
Multiple Variants,Višestruke varijante,
Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,Višestruki fiskalne godine postoje za datum {0}. Molimo podesite kompanije u fiskalnoj godini,
Music,Muzika,
My Account,Moj račun,
Name error: {0},Ime greška: {0},
Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Ime novog računa. Napomena: Molimo vas da ne stvaraju račune za kupcima i dobavljačima,
Name or Email is mandatory,Ime ili e-obavezno,
Nature Of Supplies,Nature of Supplies,
Navigating,Navigacija,
Needs Analysis,Analiza potreba,
Negative Quantity is not allowed,Negativna količina nije dopuštena,
Negative Valuation Rate is not allowed,Negativna stopa vrijednovanja nije dopuštena,
Negotiation/Review,Pregovaranje / pregled,
Net Asset value as on,Neto vrijednost imovine kao i na,
Net Cash from Financing,Neto gotovine iz aktivnosti finansiranja,
Net Cash from Investing,Neto novčani tok od investicione,
Net Cash from Operations,Neto novčani tok od operacije,
Net Change in Accounts Payable,Neto promjena na računima dobavljača,
Net Change in Accounts Receivable,Neto promjena u Potraživanja,
Net Change in Cash,Neto promjena u gotovini,
Net Change in Equity,Neto promjena u kapitalu,
Net Change in Fixed Asset,Neto promjena u fiksnoj Asset,
Net Change in Inventory,Neto promjena u zalihama,
Net ITC Available(A) - (B),Neto dostupan ITC (A) - (B),
Net Profit,Neto profit,
Net Total,Osnovica,
New Account Name,Naziv novog naloga,
New Address,Nova adresa,
New BOM,Novi BOM,
New Batch ID (Optional),New Batch ID (opcionalno),
New Batch Qty,New Batch Količina,
New Company,Nova firma,
New Cost Center Name,Novi troška Naziv,
New Customer Revenue,New Customer prihoda,
New Customers,Novi Kupci,
New Department,Novo odjeljenje,
New Employee,Novi zaposleni,
New Location,Nova lokacija,
New Quality Procedure,Novi postupak kvaliteta,
New Sales Invoice,Prodaja novih Račun,
New Sales Person Name,Ime prodaja novih lica,
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,Novi serijski broj ne može imati skladište. Skladište mora biti postavljen od strane burze upisu ili kupiti primitka,
New Warehouse Name,Novo skladište Ime,
New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Novi kreditni limit je manje od trenutne preostali iznos za kupca. Kreditni limit mora biti atleast {0},
New task,Novi zadatak,
New {0} pricing rules are created,Stvorena su nova {0} pravila za cene,
Newsletters,Newsletteri,
Newspaper Publishers,novinski izdavači,
Next,Sljedeći,
Next Contact By cannot be same as the Lead Email Address,Sljedeća kontaktirati putem ne može biti isti kao Lead-mail adresa,
Next Contact Date cannot be in the past,Sljedeća Kontakt datum ne može biti u prošlosti,
Next Steps,Sljedeći koraci,
No Action,Nema akcije,
No Customers yet!,Ne Kupci još!,
No Data,Nema podataka,
No Delivery Note selected for Customer {},Nije odabrana beleška za isporuku za kupca {},
No Item with Barcode {0},No Stavka s Barcode {0},
No Item with Serial No {0},No Stavka s rednim brojem {0},
No Items available for transfer,Nema stavki za prenos,
No Items selected for transfer,Nije izabrana stavka za prenos,
No Items to pack,Nema stavki za omot,
No Items with Bill of Materials to Manufacture,Nema artikala sa Bill materijala za proizvodnju,
No Items with Bill of Materials.,Nema predmeta s računom materijala.,
No Permission,Bez dozvole,
No Remarks,No Napomene,
No Result to submit,Nije rezultat koji se šalje,
No Student Groups created.,No studentskih grupa stvorio.,
No Students in,No Studenti u,
No Tax Withholding data found for the current Fiscal Year.,Nije pronađen nikakav porezni zadatak za tekuću fiskalnu godinu.,
No Work Orders created,Stvaranje radnih naloga,
No accounting entries for the following warehouses,Nema računovodstvene unosi za sljedeće skladišta,
No contacts with email IDs found.,Nisu pronađeni kontakti sa ID-ima e-pošte.,
No data for this period,Nema podataka za ovaj period,
No description given,Nema opisa dano,
No employees for the mentioned criteria,Nema zaposlenih po navedenim kriterijumima,
No gain or loss in the exchange rate,Nema dobiti ili gubitka kursa,
No items listed,No stavke navedene,
No items to be received are overdue,Nijedna stavka koja se primi ne kasni,
No material request created,Nije napravljen materijalni zahtev,
No of Interactions,Broj interakcija,
No of Shares,Broj akcija,
No pending Material Requests found to link for the given items.,Nema traženih materijala koji su pronađeni za povezivanje za date stavke.,
No products found,Nije pronađen nijedan proizvod,
No products found.,Nema proizvoda.,
No record found,Ne rekord naći,
No records found in the Invoice table,Nisu pronađeni u tablici fakturu,
No records found in the Payment table,Nisu pronađeni u tablici plaćanja,
No tasks,No zadataka,
No time sheets,Nema vremena listova,
No values,Nema vrijednosti,
No {0} found for Inter Company Transactions.,Nije pronađeno {0} za Inter Company Transactions.,
Non GST Inward Supplies,Non GST ulazne potrepštine,
Non Profit,Neprofitne,
Non Profit (beta),Neprofitna (beta),
Non-GST outward supplies,Vanjske zalihe bez GST-a,
Non-Group to Group,Non-grupe do grupe,
None,Ništa,
None of the items have any change in quantity or value.,Nijedan od stavki imaju bilo kakve promjene u količini ili vrijednosti.,
Nos,Nos,
Not Available,Nije dostupno,
Not Marked,neobilježen,
Not Paid and Not Delivered,Ne plaća i ne dostave,
Not Permitted,Ne Dozvoljena,
Not Started,Nije počela,
Not active,Ne aktivna,
Not allow to set alternative item for the item {0},Ne dozvolite postavljanje alternativne stavke za stavku {0},
Not allowed to update stock transactions older than {0},Nije dopušteno osvježavanje burzovnih transakcija stariji od {0},
Not authorized to edit frozen Account {0},Nije ovlašten za uređivanje smrznute račun {0},
Not authroized since {0} exceeds limits,Ne authroized od {0} prelazi granice,
Not permitted for {0},Nije dozvoljeno za {0},
"Not permitted, configure Lab Test Template as required","Nije dopušteno, konfigurirati Lab Test Template po potrebi",
Not permitted. Please disable the Service Unit Type,Nije dozvoljeno. Molim vas isključite Type Service Service Unit,
Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),Napomena: Zbog / Reference Datum premašuje dozvoljeni dana kreditnu kupca {0} dan (a),
Note: Item {0} entered multiple times,Napomena : Stavka {0} upisan je više puta,
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Napomena : Stupanje Plaćanje neće biti izrađen od ' Gotovina ili bankovni račun ' nije naveden,
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Napomena : Sustav neće provjeravati pretjerano isporuke i više - booking za točku {0} kao količinu ili vrijednost je 0,
Note: There is not enough leave balance for Leave Type {0},Napomena : Nema dovoljno ravnotežu dopust za dozvolu tipa {0},
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Napomena : Ovaj troška jegrupa . Ne mogu napraviti računovodstvenih unosa protiv skupine .,
Note: {0},Napomena : {0},
Notes,Bilješke,
Nothing is included in gross,Ništa nije uključeno u bruto,
Nothing more to show.,Ništa više pokazati.,
Notify Customers via Email,Obaveštavajte kupce putem e-pošte,
Number,Broj,
Number of Depreciations Booked cannot be greater than Total Number of Depreciations,Broj Amortizacija Booked ne može biti veća od Ukupan broj Amortizacija,
Number of Interaction,Broj Interaction,
Number of Order,Broj Order,
"Number of new Account, it will be included in the account name as a prefix","Broj novog naloga, on će biti uključen u ime računa kao prefiks",
"Number of new Cost Center, it will be included in the cost center name as a prefix",Broj novih troškovnih centara će biti uključen u naziv troškovnog centra kao prefiks,
Number of root accounts cannot be less than 4,Broj korijenskih računa ne može biti manji od 4,
Odometer,mjerač za pređeni put,
Office Equipments,uredske opreme,
Office Maintenance Expenses,Troškovi održavanja ureda,
Office Rent,najam ureda,
On Hold,Na čekanju,
On Net Total,Na Net Total,
One customer can be part of only single Loyalty Program.,Jedan korisnik može biti deo samo jednog programa lojalnosti.,
Online Auctions,Online aukcije,
"Only the Student Applicant with the status ""Approved"" will be selected in the table below.",Samo studentski kandidat sa statusom &quot;Odobreno&quot; biće izabran u donjoj tabeli.,
Only users with {0} role can register on Marketplace,Samo korisnici sa ulogom {0} mogu se registrovati na tržištu,
Open BOM {0},Otvorena BOM {0},
Open Item {0},Otvorena Stavka {0},
Open Notifications,Otvorena obavjestenja,
Open Orders,Otvori naloge,
Open a new ticket,Otvorite novu kartu,
Opening,Otvaranje,
Opening (Cr),P.S. (Pot),
Opening (Dr),P.S. (Dug),
Opening Accounting Balance,Otvaranje Računovodstvo Balance,
Opening Accumulated Depreciation,Otvaranje Ispravka vrijednosti,
Opening Accumulated Depreciation must be less than equal to {0},Otvaranje Ispravka vrijednosti mora biti manji od jednak {0},
Opening Balance,Otvaranje bilansa,
Opening Balance Equity,Početno stanje Equity,
Opening Date and Closing Date should be within same Fiscal Year,Datum otvaranja i zatvaranja datum bi trebao biti u istoj fiskalnoj godini,
Opening Date should be before Closing Date,Otvaranje Datum bi trebao biti prije zatvaranja datum,
Opening Entry Journal,Otvaranje časopisa,
Opening Invoice Creation Tool,Otvaranje alata za kreiranje fakture,
Opening Invoice Item,Otvaranje stavke fakture,
Opening Invoices,Otvaranje faktura,
Opening Invoices Summary,Otvaranje rezimea faktura,
Opening Qty,Otvaranje Kol,
Opening Stock,otvaranje Stock,
Opening Stock Balance,Otvaranje Stock Balance,
Opening Value,otvaranje vrijednost,
Opening {0} Invoice created,Otvaranje {0} Stvorena faktura,
Operation,Operacija,
Operation Time must be greater than 0 for Operation {0},Vrijeme rada mora biti veći od 0 za rad {0},
"Operation {0} longer than any available working hours in workstation {1}, break down the operation into multiple operations","Operacija {0} više od bilo koje dostupne radnog vremena u radnu stanicu {1}, razbijaju rad u više operacija",
Operations,Operacije,
Operations cannot be left blank,Operacije se ne može ostati prazno,
Opp Count,Opp Count,
Opp/Lead %,Opp / Lead%,
Opportunities,Prilike,
Opportunities by lead source,Mogućnosti izvora izvora,
Opportunity,Prilika (Opportunity),
Opportunity Amount,Mogućnost Iznos,
"Optional. Sets company's default currency, if not specified.","Opcionalno. Postavlja kompanije Zadana valuta, ako nije navedeno.",
Optional. This setting will be used to filter in various transactions.,Izborni . Ova postavka će se koristiti za filtriranje u raznim transakcijama .,
Options,Opcije,
Order Count,kako Count,
Order Entry,Unos naloga,
Order Value,Da bi vrijednost,
Order rescheduled for sync,Porudžbina je reprogramirana za sinhronizaciju,
Order/Quot %,Kako / Quot%,
Ordered,Naručeno,
Ordered Qty,Naručena kol,
"Ordered Qty: Quantity ordered for purchase, but not received.","Naručena količina: količina naručena za kupnju, ali nije došla .",
Orders,Narudžbe,
Orders released for production.,Narudžbe objavljen za proizvodnju.,
Organization,Organizacija,
Organization Name,Naziv organizacije,
Other,Drugi,
Other Reports,Ostali izveštaji,
"Other outward supplies(Nil rated,Exempted)","Ostale vanjske zalihe (Nil ocijenjeno, Izuzeti)",
Others,Drugi,
Out Qty,Od kol,
Out Value,out vrijednost,
Out of Order,Ne radi,
Outgoing,Društven,
Outstanding,izvanredan,
Outstanding Amount,Izvanredna Iznos,
Outstanding Amt,Izvanredna Amt,
Outstanding Cheques and Deposits to clear,Izvanredna Čekovi i depoziti očistiti,
Outstanding for {0} cannot be less than zero ({1}),Izvanredna za {0} ne može biti manji od nule ( {1} ),
Outward taxable supplies(zero rated),Potrošačke zalihe koje su oporezovane (nulta ocjena),
Overdue,Istekao,
Overlap in scoring between {0} and {1},Preklapanje u bodovima između {0} i {1},
Overlapping conditions found between:,Preklapanje uvjeti nalaze između :,
Owner,vlasnik,
PAN,PAN,
POS,POS,
POS Profile,POS profil,
POS Profile is required to use Point-of-Sale,POS profil je potreban za korištenje Point-of-Sale,
POS Profile required to make POS Entry,POS Profil potrebno da bi POS upis,
POS Settings,POS Settings,
Packed quantity must equal quantity for Item {0} in row {1},Prepuna količina mora biti jednaka količina za točku {0} je u redu {1},
Packing Slip,Odreskom,
Packing Slip(s) cancelled,Pakiranje proklizavanja ( s) otkazan,
Paid,Plaćen,
Paid Amount,Plaćeni iznos,
Paid Amount cannot be greater than total negative outstanding amount {0},Uplaćeni iznos ne može biti veći od ukupnog broja negativnih preostali iznos {0},
Paid amount + Write Off Amount can not be greater than Grand Total,Uplaćeni iznos + otpis iznos ne može biti veći od SVEUKUPNO,
Paid and Not Delivered,Platio i nije dostavila,
Parameter,Parametar,
Parent Item {0} must not be a Stock Item,Roditelj Stavka {0} ne smije biti Stock Item,
Parents Teacher Meeting Attendance,Prisustvo sastanaka učitelja roditelja,
Partially Depreciated,Djelomično oslabio,
Partially Received,Djelomično primljeno,
Party,Stranka,
Party Name,Party ime,
Party Type,Party Tip,
Party Type and Party is mandatory for {0} account,Party Party i Party je obavezan za {0} nalog,
Party Type is mandatory,Party Tip je obavezno,
Party is mandatory,Party je obavezno,
Password,Lozinka,
Past Due Date,Datum prošlosti,
Patient,Pacijent,
Patient Appointment,Imenovanje pacijenta,
Patient Encounter,Patient Encounter,
Patient not found,Pacijent nije pronađen,
Pay Remaining,Plati preostalo,
Pay {0} {1},Plaćajte {0} {1},
Payable,Plativ,
Payable Account,Račun se plaća,
Payment,Plaćanje,
Payment Cancelled. Please check your GoCardless Account for more details,Plaćanje je otkazano. Molimo provjerite svoj GoCardless račun za više detalja,
Payment Confirmation,Potvrda o plaćanju,
Payment Document,plaćanje Document,
Payment Due Date,Plaćanje Due Date,
Payment Entries {0} are un-linked,Plaćanje Unosi {0} su un-povezani,
Payment Entry,plaćanje Entry,
Payment Entry already exists,Plaćanje Entry već postoji,
Payment Entry has been modified after you pulled it. Please pull it again.,Plaćanje Entry je izmijenjena nakon što ste ga izvukao. Molimo vas da se ponovo povucite.,
Payment Entry is already created,Plaćanje Ulaz je već stvorena,
Payment Failed. Please check your GoCardless Account for more details,Plaćanje nije uspelo. Molimo provjerite svoj GoCardless račun za više detalja,
Payment Gateway,Payment Gateway,
"Payment Gateway Account not created, please create one manually.","Payment Gateway računa kreiranu, molimo vas da napravite ručno.",
Payment Gateway Name,Naziv Gateway Gateway-a,
Payment Mode,Način plaćanja,
Payment Receipt Note,Plaćanje potvrda o primitku,
Payment Request,Plaćanje Upit,
Payment Request for {0},Zahtjev za plaćanje za {0},
Payment Tems,Temovi plaćanja,
Payment Term,Rok plaćanja,
Payment Terms,Uslovi plaćanja,
Payment Terms Template,Šablon izraza plaćanja,
Payment Terms based on conditions,Uslovi plaćanja na osnovu uslova,
Payment Type,Vrsta plaćanja,
"Payment Type must be one of Receive, Pay and Internal Transfer","Plaćanje Tip mora biti jedan od Primi, Pay i unutrašnje Transfer",
Payment against {0} {1} cannot be greater than Outstanding Amount {2},Plaćanje protiv {0} {1} ne može biti veći od preostalog iznosa {2},
Payment request {0} created,Zahtev za plaćanje {0} kreiran,
Payments,Plaćanja,
Payroll Payable,Payroll plaćaju,
Payslip,Payslip,
Pending Activities,Aktivnosti na čekanju,
Pending Amount,Iznos na čekanju,
Pending Leaves,Pending Leaves,
Pending Qty,U očekivanju Količina,
Pending Quantity,Količina na čekanju,
Pending Review,Na čekanju,
Pending activities for today,Aktivnostima na čekanju za danas,
Pension Funds,mirovinskim fondovima,
Percentage Allocation should be equal to 100%,Postotak izdvajanja trebala bi biti jednaka 100 %,
Perception Analysis,Analiza percepcije,
Period,Period,
Period Closing Entry,Period zatvaranja Entry,
Period Closing Voucher,Razdoblje Zatvaranje bon,
Periodicity,Periodičnost,
Personal Details,Osobni podaci,
Pharmaceutical,farmaceutski,
Pharmaceuticals,Lijekovi,
Physician,Lekar,
Pincode,Poštanski broj,
Place Of Supply (State/UT),Mjesto ponude (država / UT),
Place Order,Place Order,
Plan Name,Ime plana,
Plan for maintenance visits.,Plan održavanja posjeta.,
Planned Qty,Planirani Kol,
"Planned Qty: Quantity, for which, Work Order has been raised, but is pending to be manufactured.","Količina planiranih količina: Količina za koju je radni nalog povećan, ali čeka se izrada.",
Planning,Planiranje,
Plants and Machineries,Biljke i Machineries,
Please Set Supplier Group in Buying Settings.,Molim postavite grupu dobavljača u Podešavanja kupovine.,
Please add a Temporary Opening account in Chart of Accounts,Molimo da dodate račun za privremeni otvaranje na kontnom planu,
Please add the account to root level Company - ,Dodajte račun na korijensku razinu Kompanija -,
Please check Multi Currency option to allow accounts with other currency,Molimo provjerite Multi opciju valuta kako bi se omogućilo račune sa drugoj valuti,
Please click on 'Generate Schedule',"Molimo kliknite na ""Generiraj raspored '",
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Molimo kliknite na ""Generiraj raspored ' dohvatiti Serial No dodao je za točku {0}",
Please click on 'Generate Schedule' to get schedule,"Molimo kliknite na ""Generiraj raspored ' kako bi dobili raspored",
Please create purchase receipt or purchase invoice for the item {0},Molimo vas da kreirate račun za kupovinu ili kupite fakturu za stavku {0},
Please define grade for Threshold 0%,Molimo vas da definirati razred za Threshold 0%,
Please enable Applicable on Booking Actual Expenses,Molimo omogućite stvarne troškove koji se primjenjuju na osnovu rezervisanja,
Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Molimo omogućite primenljivu na nalogu za kupovinu i primenljivu na trenutnim troškovima rezervacije,
Please enable pop-ups,Molimo omogućite pop-up prozora,
Please enter 'Is Subcontracted' as Yes or No,Unesite ' Je podugovoren ' kao da ili ne,
Please enter API Consumer Key,Molimo unesite API korisnički ključ,
Please enter API Consumer Secret,Molimo unesite API Potrošačku tajnu,
Please enter Account for Change Amount,Unesite račun za promjene Iznos,
Please enter Approving Role or Approving User,Unesite Odobravanje ulogu ili Odobravanje korisnike,
Please enter Cost Center,Unesite troška,
Please enter Delivery Date,Molimo unesite datum isporuke,
Please enter Employee Id of this sales person,Unesite zaposlenih Id ove prodaje osoba,
Please enter Expense Account,Unesite trošak računa,
Please enter Item Code to get Batch Number,Unesite Šifra da Batch Broj,
Please enter Item Code to get batch no,Unesite kod Predmeta da se hrpa nema,
Please enter Item first,Unesite predmeta prvi,
Please enter Maintaince Details first,Unesite prva Maintaince Detalji,
Please enter Planned Qty for Item {0} at row {1},Unesite Planirano Qty za točku {0} na redu {1},
Please enter Preferred Contact Email,Unesite Preferred Kontakt mail,
Please enter Production Item first,Unesite Proizvodnja predmeta prvi,
Please enter Purchase Receipt first,Molimo prvo unesite Kupovina prijem,
Please enter Receipt Document,Unesite dokument o prijemu,
Please enter Reference date,Unesite referentni datum,
Please enter Reqd by Date,Molimo unesite Reqd po datumu,
Please enter Woocommerce Server URL,Molimo unesite URL adresu Woocommerce Servera,
Please enter Write Off Account,Unesite otpis račun,
Please enter atleast 1 invoice in the table,Unesite atleast jedan račun u tablici,
Please enter company first,Unesite tvrtka prva,
Please enter company name first,Unesite ime tvrtke prvi,
Please enter default currency in Company Master,Unesite zadanu valutu u tvrtki Master,
Please enter message before sending,Unesite poruku prije slanja,
Please enter parent cost center,Unesite roditelj troška,
Please enter quantity for Item {0},Molimo unesite količinu za točku {0},
Please enter relieving date.,Unesite olakšavanja datum .,
Please enter valid Financial Year Start and End Dates,Molimo vas da unesete važeću finansijsku godinu datume početka i završetka,
Please enter valid email address,Molimo vas da unesete važeću e-mail adresu,
Please enter {0} first,Unesite {0} prvi,
Please fill in all the details to generate Assessment Result.,Molimo vas da popunite sve detalje da biste ostvarili rezultat procjene.,
Please identify/create Account (Group) for type - {0},Molimo identificirajte / kreirajte račun (grupu) za tip - {0},
Please identify/create Account (Ledger) for type - {0},Molimo identificirajte / kreirajte račun (knjigu) za vrstu - {0},
Please login as another user to register on Marketplace,Molimo prijavite se kao drugi korisnik da se registrujete na 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.,Molimo Vas da proverite da li ste zaista želite izbrisati sve transakcije za ovu kompaniju. Tvoj gospodar podaci će ostati kao što je to. Ova akcija se ne može poništiti.,
Please mention Basic and HRA component in Company,Molimo navedite komponentu Basic i HRA u kompaniji,
Please mention Round Off Account in Company,Navedite zaokružimo računa u Company,
Please mention Round Off Cost Center in Company,Navedite zaokružimo troškova centar u Company,
Please mention no of visits required,Molimo spomenuti nema posjeta potrebnih,
Please mention the Lead Name in Lead {0},Molim vas da navedete Lead Lead u Lead-u {0},
Please pull items from Delivery Note,Molimo povucite stavke iz Dostavnica,
Please register the SIREN number in the company information file,Molimo registrirajte broj SIREN-a u informacijskoj datoteci kompanije,
Please remove this Invoice {0} from C-Form {1},Molimo vas da uklonite ovu fakture {0} iz C-Form {1},
Please save the patient first,Molim vas prvo sačuvajte pacijenta,
Please save the report again to rebuild or update,Spremite izvještaj ponovo da biste ga ponovo izgradili ili ažurirali,
"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Molimo odaberite Izdvojena količina, vrsta fakture i fakture Broj u atleast jednom redu",
Please select Apply Discount On,Molimo odaberite Apply popusta na,
Please select BOM against item {0},Izaberite BOM protiv stavke {0},
Please select BOM for Item in Row {0},Molimo odaberite BOM za Stavka zaredom {0},
Please select BOM in BOM field for Item {0},Molimo odaberite BOM BOM u polje za Stavka {0},
Please select Category first,Molimo odaberite kategoriju prvi,
Please select Charge Type first,Odaberite Naknada za prvi,
Please select Company,Molimo odaberite Company,
Please select Company and Posting Date to getting entries,Molimo da odaberete Kompaniju i Datum objavljivanja da biste dobili unose,
Please select Company first,Molimo najprije odaberite Company,
Please select Completion Date for Completed Asset Maintenance Log,Molimo izaberite Datum završetka za popunjeni dnevnik održavanja sredstava,
Please select Completion Date for Completed Repair,Molimo izaberite Datum završetka za završeno popravljanje,
Please select Course,Molimo odaberite predmeta,
Please select Drug,Molimo izaberite Lijek,
Please select Existing Company for creating Chart of Accounts,Molimo odaberite postojećeg društva za stvaranje Kontni plan,
Please select Healthcare Service,Molimo odaberite Zdravstvenu službu,
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Product Bundle","Molimo odaberite Stavka u kojoj &quot;Je Stock Stavka&quot; je &quot;ne&quot; i &quot;Da li je prodaja Stavka&quot; je &quot;Da&quot;, a nema drugog Bundle proizvoda",
Please select Maintenance Status as Completed or remove Completion Date,Izaberite stanje održavanja kao završeno ili uklonite datum završetka,
Please select Party Type first,Molimo prvo odaberite Party Tip,
Please select Patient,Molimo izaberite Pacijent,
Please select Patient to get Lab Tests,Izaberite Pacijent da biste dobili laboratorijske testove,
Please select Posting Date before selecting Party,Molimo odaberite Datum knjiženja prije izbora stranke,
Please select Posting Date first,Molimo najprije odaberite Datum knjiženja,
Please select Price List,Molimo odaberite Cjenik,
Please select Program,Molimo odaberite Program,
Please select Qty against item {0},Molimo izaberite Qty protiv stavke {0},
Please select Sample Retention Warehouse in Stock Settings first,Prvo izaberite skladište za zadržavanje uzorka u postavkama zaliha,
Please select Start Date and End Date for Item {0},Molimo odaberite datum početka i datum završetka za točke {0},
Please select Student Admission which is mandatory for the paid student applicant,Molimo izaberite Studentski prijem koji je obavezan za učeniku koji je platio,
Please select a BOM,Izaberite BOM,
Please select a Batch for Item {0}. Unable to find a single batch that fulfills this requirement,Molimo odaberite serijom za Stavka {0}. Nije moguće pronaći jednu seriju koja ispunjava ovaj zahtjev,
Please select a Company,Molimo odaberite poduzeća,
Please select a batch,Molimo odaberite serije,
Please select a field to edit from numpad,Molimo izaberite polje za uređivanje iz numpad-a,
Please select a table,Izaberite tabelu,
Please select a valid Date,Izaberite važeći datum,
Please select a value for {0} quotation_to {1},Molimo odabir vrijednosti za {0} quotation_to {1},
Please select a warehouse,Molimo odaberite skladište,
Please select at least one domain.,Izaberite najmanje jedan domen.,
Please select correct account,Molimo odaberite ispravan račun,
Please select date,Molimo izaberite datum,
Please select item code,Odaberite Šifra,
Please select month and year,Molimo odaberite mjesec i godinu,
Please select prefix first,Odaberite prefiks prvi,
Please select the Company,Izaberite kompaniju,
Please select the Multiple Tier Program type for more than one collection rules.,Molimo da izaberete tip višestrukog programa za više pravila kolekcije.,
Please select the assessment group other than 'All Assessment Groups',"Molimo odaberite grupu procjene, osim &#39;Svi Procjena grupe&#39;",
Please select the document type first,Molimo odaberite vrstu dokumenta prvi,
Please select weekly off day,Odaberite tjednik off dan,
Please select {0},Odaberite {0},
Please select {0} first,Odaberite {0} Prvi,
Please set 'Apply Additional Discount On',Molimo podesite &#39;primijeniti dodatne popusta na&#39;,
Please set 'Asset Depreciation Cost Center' in Company {0},Molimo podesite &#39;Asset Amortizacija troškova Center&#39; u kompaniji {0},
Please set 'Gain/Loss Account on Asset Disposal' in Company {0},Molimo podesite &#39;dobitak / gubitak računa na Asset Odlaganje&#39; u kompaniji {0},
Please set Account in Warehouse {0} or Default Inventory Account in Company {1},Molimo da postavite nalog u skladištu {0} ili podrazumevani račun inventara u kompaniji {1},
Please set B2C Limit in GST Settings.,Molimo postavite B2C Limit u GST Settings.,
Please set Company,Molimo podesite Company,
Please set Company filter blank if Group By is 'Company',Molimo podesite Company filter prazno ako Skupina Od je &#39;Company&#39;,
Please set Default Payroll Payable Account in Company {0},Molimo podesite Uobičajeno plaće plaćaju račun poduzeća {0},
Please set Depreciation related Accounts in Asset Category {0} or Company {1},Molimo podesite Računi se odnose amortizacije u Asset Kategorija {0} ili kompanije {1},
Please set Email Address,Molimo podesite e-mail adresa,
Please set GST Accounts in GST Settings,Molimo postavite GST račune u GST podešavanjima,
Please set Hotel Room Rate on {},Molimo podesite Hotel Room Rate na {},
Please set Number of Depreciations Booked,Molimo podesite Broj Amortizacija Booked,
Please set Unrealized Exchange Gain/Loss Account in Company {0},Molimo da unesete Nerealizovani Exchange Gain / Loss Account u kompaniji {0},
Please set User ID field in an Employee record to set Employee Role,Molimo postavite korisniku ID polja u rekord zaposlenog da postavite uloga zaposlenih,
Please set a default Holiday List for Employee {0} or Company {1},Molimo podesite default odmor Lista za zaposlenog {0} ili kompanije {1},
Please set account in Warehouse {0},Molimo postavite nalog u skladištu {0},
Please set an active menu for Restaurant {0},Molimo aktivirajte meni za restoran {0},
Please set associated account in Tax Withholding Category {0} against Company {1},Molimo da podesite pridruženi račun u Kategorija za odbijanje poreza {0} protiv Kompanije {1},
Please set at least one row in the Taxes and Charges Table,Molimo postavite najmanje jedan red u tablici poreza i naknada,
Please set default Cash or Bank account in Mode of Payment {0},Molimo postavite zadanu gotovinom ili banka računa u načinu plaćanja {0},
Please set default account in Salary Component {0},Molimo podesite zadani račun u Plaća Komponenta {0},
Please set default customer in Restaurant Settings,Podesite podrazumevani kupac u podešavanjima restorana,
Please set default {0} in Company {1},Molimo podesite default {0} u kompaniji {1},
Please set filter based on Item or Warehouse,Molimo podesite filter na osnovu Item ili Skladište,
Please set leave policy for employee {0} in Employee / Grade record,Molimo navedite politiku odlaska za zaposlenog {0} u Zapisniku zaposlenih / razreda,
Please set recurring after saving,Molimo podesite ponavljaju nakon spremanja,
Please set the Customer Address,Molimo postavite adresu kupca,
Please set the Default Cost Center in {0} company.,Molimo da podesite Centar za podrazumevane troškove u kompaniji {0}.,
Please set the Email ID for the Student to send the Payment Request,Molimo da podesite Email ID za Student da pošaljete Zahtev za plaćanje,
Please set the Item Code first,Molimo prvo postavite kod za stavku,
Please set the Payment Schedule,Molimo postavite Raspored plaćanja,
Please set the series to be used.,Molimo postavite seriju koja će se koristiti.,
Please set {0} for address {1},Molimo vas podesite {0} za adresu {1},
Please setup Students under Student Groups,Molimo da podesite studente pod studentskim grupama,
Please specify Company,Navedite tvrtke,
Please specify Company to proceed,Navedite Tvrtka postupiti,
Please specify a valid 'From Case No.',Navedite važeću &#39;iz Predmet br&#39;,
Please specify a valid Row ID for row {0} in table {1},Molimo navedite važeću Row ID za redom {0} {1} u tabeli,
Please specify at least one attribute in the Attributes table,Molimo navedite barem jedan atribut atribute tabeli,
Please specify currency in Company,Navedite valuta u Company,
Please specify either Quantity or Valuation Rate or both,Navedite ili količini ili vrednovanja Ocijenite ili oboje,
Please specify from/to range,Molimo navedite iz / u rasponu,
Please supply the specified items at the best possible rates,Molimo vas da dostavite navedene stavke na najbolji mogući stope,
Please wait 3 days before resending the reminder.,Molim vas sačekajte 3 dana pre ponovnog podnošenja podsetnika.,
Point of Sale,Point of Sale,
Point-of-Sale,Point-of-prodaju,
Point-of-Sale Profile,Point-of-prodaju profil,
Portal,Portal,
Portal Settings,portal Postavke,
Possible Supplier,moguće dobavljač,
Postal Expenses,Poštanski troškovi,
Posting Date,Objavljivanje Datum,
Posting Date cannot be future date,Datum knjiženja ne može biti u budućnosti,
Posting Time,Objavljivanje Vrijeme,
Posting date and posting time is mandatory,Datum knjiženja i knjiženje vrijeme je obvezna,
Posting timestamp must be after {0},Objavljivanje timestamp mora biti poslije {0},
Potential opportunities for selling.,Potencijalne prilike za prodaju.,
Practitioner Schedule,Raspored lekara,
Pre Sales,Pre Sales,
Preference,Prednost,
Prescribed Procedures,Propisane procedure,
Prescription,Prescription,
Prescription Dosage,Dosage na recept,
Prescription Duration,Trajanje recepta,
Prescriptions,Prescriptions,
Prev,Prev,
Preview,Pregled,
Previous Financial Year is not closed,Prethodne finansijske godine nije zatvoren,
Price,Cijena,
Price List,Cjenik,
Price List Currency not selected,Cjenik valuta ne bira,
Price List Rate,Cjenik Stopa,
Price List master.,Cjenik majstor .,
Price List must be applicable for Buying or Selling,Cjenik mora biti primjenjiv za kupnju ili prodaju,
Price List {0} is disabled or does not exist,Popis Cijena {0} je isključena ili ne postoji,
Price or product discount slabs are required,Obavezne su ploče sa cijenama ili popustima na proizvode,
Pricing,Cijene,
Pricing Rule,cijene Pravilo,
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Cijene Pravilo prvo se bira na temelju 'Nanesite na' terenu, koji može biti točka, točka Grupa ili Brand.",
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","Cijene Pravilo je napravljen prebrisati Cjenik / definirati postotak popusta, na temelju nekih kriterija.",
Pricing Rule {0} is updated,Pravilo cijene {0} se ažurira,
Pricing Rules are further filtered based on quantity.,Pravilnik o određivanju cijena dodatno se filtrira na temelju količine.,
Primary Address Details,Primarne adrese,
Primary Contact Details,Primarni kontakt podaci,
Print Format,Format ispisa,
Print IRS 1099 Forms,Ispiši obrasce IRS 1099,
Print Report Card,Štampaj izveštaj karticu,
Print Settings,Postavke ispisa,
Print and Stationery,Print i pribora,
Print settings updated in respective print format,podešavanja print ažuriran u odgovarajućim formatu print,
Print taxes with zero amount,Odštampajte poreze sa nultim iznosom,
Printing and Branding,Tiskanje i brendiranje,
Private Equity,Private Equity,
Procedure,Procedura,
Process Day Book Data,Obradi podatke o dnevnoj knjizi,
Process Master Data,Obradu glavnih podataka,
Processing Chart of Accounts and Parties,Obrada kontnog plana i stranaka,
Processing Items and UOMs,Obrada predmeta i UOM-ova,
Processing Party Addresses,Obrada stranačkih adresa,
Processing Vouchers,Obrada vaučera,
Procurement,Nabavka,
Produced Qty,Proizveden količina,
Product,Proizvod,
Product Bundle,Bundle proizvoda,
Product Search,Traži proizvod,
Production,Proizvodnja,
Production Item,Proizvodnja Item,
Products,Proizvodi,
Profit and Loss,Račun dobiti i gubitka,
Profit for the year,Dobit za godinu,
Program,Program,
Program in the Fee Structure and Student Group {0} are different.,Program u strukturi naknada i studentskoj grupi {0} su različiti.,
Program {0} does not exist.,Program {0} ne postoji.,
Program: ,Program:,
Progress % for a task cannot be more than 100.,Napredak% za zadatak ne može biti više od 100.,
Project Collaboration Invitation,Projekt Collaboration Poziv,
Project Id,Id projekta,
Project Manager,Menadzer projekata,
Project Name,Naziv projekta,
Project Start Date,Datum početka projekta,
Project Status,Status projekta,
Project Summary for {0},Rezime projekta za {0},
Project Update.,Ažuriranje projekta.,
Project Value,Vrijednost projekta,
Project activity / task.,Projektna aktivnost / zadatak.,
Project master.,Direktor Projekata,
Project-wise data is not available for Quotation,Projekat - mudar podaci nisu dostupni za ponudu,
Projected,Projektovan,
Projected Qty,Projected Qty,
Projected Quantity Formula,Projektirana količina količine,
Projects,Projekti,
Proposal Writing,Pisanje prijedlog,
Proposal/Price Quote,Predlog / Cjenik cijene,
Prospecting,Istraživanje,
Provisional Profit / Loss (Credit),Privremeni dobit / gubitak (Credit),
Publications,Publikacije,
Publish Items on Website,Objavite Artikli na sajtu,
Published,Objavljen,
Publishing,objavljivanje,
Purchase,Kupiti,
Purchase Amount,Kupovina Iznos,
Purchase Date,Datum kupovine,
Purchase Invoice,Narudzbine,
Purchase Invoice {0} is already submitted,Kupnja Račun {0} već je podnijela,
Purchase Manager,Kupovina Manager,
Purchase Master Manager,Kupovina Master Manager,
Purchase Order,Narudžbenica,
Purchase Order Amount,Iznos narudžbine,
Purchase Order Amount(Company Currency),Iznos narudžbe (valuta kompanije),
Purchase Order Date,Datum naloga za kupovinu,
Purchase Order Items not received on time,Stavke porudžbine nisu blagovremeno dobijene,
Purchase Order number required for Item {0},Broj narudžbenice kupnje je potreban za artikal {0},
Purchase Order to Payment,Purchase Order na isplatu,
Purchase Order {0} is not submitted,Narudžbenicu {0} nije podnesen,
Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Narudžbe za kupovinu nisu dozvoljene za {0} zbog stanja kartice koja se nalazi na {1}.,
Purchase Orders given to Suppliers.,Kupnja naloge koje je dao dobavljače.,
Purchase Price List,Kupoprodajna cijena List,
Purchase Receipt,Račun kupnje,
Purchase Receipt {0} is not submitted,Račun kupnje {0} nije podnesen,
Purchase Tax Template,Porez na promet Template,
Purchase User,Kupovina korisnika,
Purchase orders help you plan and follow up on your purchases,Narudžbenice vam pomoći planirati i pratiti na kupovinu,
Purchasing,Nabava,
Purpose must be one of {0},Svrha mora biti jedan od {0},
Qty,Kol,
Qty To Manufacture,Količina za proizvodnju,
Qty Total,Količina Ukupno,
Qty for {0},Količina za {0},
Qualification,Kvalifikacija,
Quality,Kvalitet,
Quality Action,Kvalitetna akcija,
Quality Goal.,Cilj kvaliteta.,
Quality Inspection,Provjera kvalitete,
Quality Inspection: {0} is not submitted for the item: {1} in row {2},Inspekcija kvaliteta: {0} se ne podnosi za stavku: {1} u redu {2},
Quality Management,upravljanja kvalitetom,
Quality Meeting,Sastanak kvaliteta,
Quality Procedure,Postupak kvaliteta,
Quality Procedure.,Postupak kvaliteta.,
Quality Review,Pregled kvaliteta,
Quantity,Količina,
Quantity for Item {0} must be less than {1},Količina za točku {0} mora biti manji od {1},
Quantity in row {0} ({1}) must be same as manufactured quantity {2},Količina u redu {0} ( {1} ) mora biti isti kao proizvedena količina {2},
Quantity must be less than or equal to {0},Količina mora biti manji ili jednak {0},
Quantity must not be more than {0},Količina ne smije biti više od {0},
Quantity required for Item {0} in row {1},Količina potrebna za točke {0} je u redu {1},
Quantity should be greater than 0,Količina bi trebao biti veći od 0,
Quantity to Make,Količina koju treba napraviti,
Quantity to Manufacture must be greater than 0.,Količina za proizvodnju mora biti veći od 0.,
Quantity to Produce,Količina za proizvodnju,
Quantity to Produce can not be less than Zero,Količina za proizvodnju ne može biti manja od nule,
Query Options,Opcije upita,
Queued for replacing the BOM. It may take a few minutes.,Očekuje se zamena BOM-a. Može potrajati nekoliko minuta.,
Queued for updating latest price in all Bill of Materials. It may take a few minutes.,Očekuje se ažuriranje najnovije cene u svim materijalima. Može potrajati nekoliko minuta.,
Quick Journal Entry,Brzi unos u dnevniku,
Quot Count,Quot Count,
Quot/Lead %,Quot / Lead%,
Quotation,Ponude,
Quotation {0} is cancelled,Ponuda {0} je otkazana,
Quotation {0} not of type {1},Ponuda {0} nije tip {1},
Quotations,Citati,
"Quotations are proposals, bids you have sent to your customers","Citati su prijedlozi, ponude koje ste poslali svojim kupcima",
Quotations received from Suppliers.,Ponude dobijene od dobavljača.,
Quotations: ,Citati:,
Quotes to Leads or Customers.,Ponude za kupce ili potencijalne kupce.,
RFQs are not allowed for {0} due to a scorecard standing of {1},RFQ-ovi nisu dozvoljeni za {0} zbog stanja karte za rezultat {1},
Range,Domet,
Rate,Cijena,
Rate:,Ocijeni:,
Rating,Ocjena,
Raw Material,sirovine,
Raw Materials,Sirovine,
Raw Materials cannot be blank.,Sirovine ne može biti prazan.,
Re-open,Ponovno otvorena,
Read blog,Pročitajte blog,
Read the ERPNext Manual,Pročitajte ERPNext Manual,
Reading Uploaded File,Čitanje preuzete datoteke,
Real Estate,Nekretnine,
Reason For Putting On Hold,Razlog za stavljanje na čekanje,
Reason for Hold,Razlog zadržavanja,
Reason for hold: ,Razlog zadržavanja:,
Receipt,priznanica,
Receipt document must be submitted,mora biti dostavljen dokument o prijemu,
Receivable,Potraživanja,
Receivable Account,Potraživanja račun,
Received,primljen,
Received On,Primljen,
Received Quantity,Primljena količina,
Received Stock Entries,Primljeni unosi na zalihe,
Receiver List is empty. Please create Receiver List,Receiver Lista je prazna . Molimo stvoriti Receiver Popis,
Recipients,Primatelji,
Reconcile,pomiriti,
"Record of all communications of type email, phone, chat, visit, etc.","Snimak svih komunikacija tipa e-mail, telefon, chat, itd",
Records,Zapisi,
Redirect URL,redirect URL,
Ref,Ref.,
Ref Date,Ref: Datum,
Reference,Upućivanje,
Reference #{0} dated {1},Reference # {0} od {1},
Reference Date,Referentni datum,
Reference Doctype must be one of {0},Referentni Doctype mora biti jedan od {0},
Reference Document,referentni dokument,
Reference Document Type,Referentni dokument Tip,
Reference No & Reference Date is required for {0},Reference Nema & Reference Datum je potrebno za {0},
Reference No and Reference Date is mandatory for Bank transaction,Poziv na broj i referentni datum je obavezan za transakcije banke,
Reference No is mandatory if you entered Reference Date,Reference Ne obvezno ako ušao referentnog datuma,
Reference No.,Referentni broj,
Reference Number,Referentni broj,
Reference Owner,referentni Vlasnik,
Reference Type,Referentna Tip,
"Reference: {0}, Item Code: {1} and Customer: {2}","Referenca: {0}, Šifra: {1} i kupaca: {2}",
References,Reference,
Refresh Token,Refresh Token,
Region,Regija,
Register,Registrujte se,
Rejected,Odbijen,
Related,povezan,
Relation with Guardian1,Odnos sa Guardian1,
Relation with Guardian2,Odnos sa Guardian2,
Release Date,Datum izdavanja,
Reload Linked Analysis,Ponovo učitaj analizu,
Remaining,ostali,
Remaining Balance,Preostali iznos,
Remarks,Primjedbe,
Reminder to update GSTIN Sent,Podsetnik za ažuriranje GSTIN Poslato,
Remove item if charges is not applicable to that item,Uklonite stavku ako naknada nije primjenjiv na tu stavku,
Removed items with no change in quantity or value.,Ukloniti stavke bez promjene u količini ili vrijednosti.,
Reopen,Ponovo otvoriti,
Reorder Level,Ponovno red Level,
Reorder Qty,Ponovno red Qty,
Repeat Customer Revenue,Ponovite Customer prihoda,
Repeat Customers,Ponovite Kupci,
Replace BOM and update latest price in all BOMs,Zamijenite BOM i ažurirajte najnoviju cijenu u svim BOM,
Replied,Odgovorio,
Report,Izvjestaj,
Report Builder,Generator izvjestaja,
Report Type,Tip izvjestaja,
Report Type is mandatory,Vrsta izvjestaja je obavezna,
Reports,Izvještaji,
Reqd By Date,Reqd Po datumu,
Reqd Qty,Reqd Qty,
Request for Quotation,Zahtjev za ponudu,
Request for Quotations,Zahtjev za ponudu,
Request for Raw Materials,Zahtjev za sirovine,
Request for purchase.,Zahtjev za kupnju.,
Request for quotation.,Upit za ponudu.,
Requested Qty,Traženi Kol,
"Requested Qty: Quantity requested for purchase, but not ordered.","Tražena količina : Količina zatražio za kupnju , ali ne i naređeno .",
Requesting Site,Podnošenje zahtjeva,
Requesting payment against {0} {1} for amount {2},Tražeći isplatu protiv {0} {1} za iznos {2},
Requestor,Podnositelj zahteva,
Required On,Potrebna On,
Required Qty,Potrebna Kol,
Required Quantity,Tražena količina,
Reschedule,Ponovo raspored,
Research,Istraživanje,
Research & Development,istraživanje i razvoj,
Researcher,Istraživač,
Resend Payment Email,Ponovo pošaljite mail plaćanja,
Reserve Warehouse,Rezervni skladište,
Reserved Qty,Rezervirano Kol,
Reserved Qty for Production,Rezervirano Količina za proizvodnju,
Reserved Qty for Production: Raw materials quantity to make manufacturing items.,Količina rezervirane za proizvodnju: Količina sirovina za izradu proizvodnih predmeta.,
"Reserved Qty: Quantity ordered for sale, but not delivered.","Rezervirano Količina : Količina naručiti za prodaju , ali nije dostavljena .",
Reserved Warehouse is mandatory for Item {0} in Raw Materials supplied,Rezervisano skladište je obavezno za stavku {0} u isporučenim sirovinama,
Reserved for manufacturing,Rezervirano za proizvodnju,
Reserved for sale,Rezervirano za prodaju,
Reserved for sub contracting,Rezervisano za podugovaranje,
Resistant,Otporno,
Resolve error and upload again.,Rešite grešku i ponovo je prenesite.,
Rest Of The World,Ostatak svijeta,
Restart Subscription,Restart pretplata,
Restaurant,Restoran,
Result Date,Datum rezultata,
Result already Submitted,Rezultat već podnet,
Resume,Nastavi,
Retail,Maloprodaja,
Retail & Wholesale,Trgovina na veliko i,
Retail Operations,Trgovina na malo,
Retained Earnings,Zadržana dobit,
Retention Stock Entry,Zadržavanje zaliha zaliha,
Retention Stock Entry already created or Sample Quantity not provided,Već stvoreni unos zadržavanja zaliha ili količina uzorka nisu obezbeđeni,
Return,Povratak,
Return / Credit Note,Povratak / Credit Note,
Return / Debit Note,Povratak / Debit Napomena,
Returns,povraćaj,
Reverse Journal Entry,Povratni dnevnik,
Review Invitation Sent,Poslato,
Review and Action,Pregled i radnja,
Rooms Booked,Sobe rezervirane,
Root Company,Root Company,
Root Type,korijen Tip,
Root Type is mandatory,Korijen Tip je obvezno,
Root cannot be edited.,Korijen ne može se mijenjati .,
Root cannot have a parent cost center,Korijen ne mogu imati središte troškova roditelj,
Round Off,Zaokružiti,
Rounded Total,Zaokruženi iznos,
Route,ruta,
Row # {0}: ,Row # {0}:,
Row # {0}: Batch No must be same as {1} {2},Row # {0}: serijski br mora biti isti kao {1} {2},
Row # {0}: Cannot return more than {1} for Item {2},Row # {0}: ne mogu vratiti više od {1} {2} za tačka,
Row # {0}: Rate cannot be greater than the rate used in {1} {2},Row # {0}: Rate ne može biti veća od stope koristi u {1} {2},
Row # {0}: Serial No is mandatory,Row # {0}: Serial No je obavezno,
Row # {0}: Serial No {1} does not match with {2} {3},Row # {0}: {1} Serial No ne odgovara {2} {3},
Row #{0} (Payment Table): Amount must be negative,Red # {0} (Tabela za plaćanje): Iznos mora biti negativan,
Row #{0} (Payment Table): Amount must be positive,Red # {0} (Tabela za plaćanje): Iznos mora biti pozitivan,
Row #{0}: Account {1} does not belong to company {2},Red # {0}: Račun {1} ne pripada kompaniji {2},
Row #{0}: Allocated Amount cannot be greater than outstanding amount.,Row # {0}: dodijeljeni iznos ne može biti veći od preostalog iznosa.,
"Row #{0}: Asset {1} cannot be submitted, it is already {2}","Row # {0}: Asset {1} ne može se podnijeti, to je već {2}",
Row #{0}: Cannot set Rate if amount is greater than billed amount for Item {1}.,Red # {0}: Ne može se podesiti Rate ako je iznos veći od fakturisane količine za stavku {1}.,
Row #{0}: Clearance date {1} cannot be before Cheque Date {2},Row # {0}: datum razmak {1} ne može biti prije Ček Datum {2},
Row #{0}: Duplicate entry in References {1} {2},Row # {0}: duplikat unosa u Reference {1} {2},
Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Red # {0}: Očekivani datum isporuke ne može biti pre datuma kupovine naloga,
Row #{0}: Item added,Red # {0}: stavka je dodata,
Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Row # {0}: Journal Entry {1} nema nalog {2} ili već usklađeni protiv drugog vaučer,
Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Row # {0}: Nije dozvoljeno da se promijeniti dobavljača kao narudžbenicu već postoji,
Row #{0}: Please set reorder quantity,Row # {0}: Molimo set Ponovno redj količinu,
Row #{0}: Please specify Serial No for Item {1},Row # {0}: Navedite rednim brojem predmeta za {1},
Row #{0}: Qty increased by 1,Red # {0}: Količina povećana za 1,
Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Row # {0}: Rate moraju biti isti kao {1}: {2} ({3} / {4}),
Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Red # {0}: Referentni tip dokumenta mora biti jedan od potraživanja troškova ili unosa dnevnika,
"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Row # {0}: Referenca Vrsta dokumenta mora biti jedan od Narudžbenice, fakturi ili Journal Entry",
Row #{0}: Rejected Qty can not be entered in Purchase Return,Row # {0}: Odbijena Količina ne može unijeti u Kupovina Povratak,
Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Row # {0}: Odbijena Skladište je obavezno protiv odbijen Stavka {1},
Row #{0}: Reqd by Date cannot be before Transaction Date,Red # {0}: Reqd po datumu ne može biti pre datuma transakcije,
Row #{0}: Set Supplier for item {1},Row # {0}: Set dobavljač za stavku {1},
Row #{0}: Status must be {1} for Invoice Discounting {2},Redak broj {0}: Status mora biti {1} za popust fakture {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","Row # {0}: Odgovor batch {1} ima samo {2} Količina. Molimo odaberite neku drugu seriju koja ima {3} Količina dostupna ili podijeliti red u više redova, za isporuku / pitanje iz više serija",
Row #{0}: Timings conflicts with row {1},Row # {0}: Timings sukobi s redom {1},
Row #{0}: {1} can not be negative for item {2},Row # {0}: {1} ne može biti negativan za stavku {2},
Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},No red {0}: Iznos ne može biti veći od čekanju Iznos protiv rashodi potraživanje {1}. Na čekanju iznos je {2},
Row {0} : Operation is required against the raw material item {1},Red {0}: Operacija je neophodna prema elementu sirovine {1},
Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},Red {0} # Stavka {1} ne može se prenijeti više od {2} u odnosu na narudžbenicu {3},
Row {0}: Activity Type is mandatory.,Red {0}: Aktivnost Tip je obavezno.,
Row {0}: Advance against Customer must be credit,Red {0}: Advance protiv Klijent mora biti kredit,
Row {0}: Advance against Supplier must be debit,Red {0}: Advance protiv Dobavljač mora biti debitne,
Row {0}: Allocated amount {1} must be less than or equals to Payment Entry amount {2},Red {0}: Raspoređeni iznos {1} mora biti manji od ili jednak iznos plaćanja Entry {2},
Row {0}: Allocated amount {1} must be less than or equals to invoice outstanding amount {2},Row {0}: {1} Izdvojena iznos mora biti manji od ili jednak naplatiti preostali iznos {2},
Row {0}: An Reorder entry already exists for this warehouse {1},Row {0}: Unos Ponovno red već postoji za to skladište {1},
Row {0}: Bill of Materials not found for the Item {1},Red {0}: Bill materijala nije pronađen za stavku {1},
Row {0}: Conversion Factor is mandatory,Red {0}: pretvorbe Factor je obvezno,
Row {0}: Cost center is required for an item {1},Red {0}: Troškovni centar je potreban za stavku {1},
Row {0}: Credit entry can not be linked with a {1},Row {0}: Kredit stavka ne može se povezati sa {1},
Row {0}: Currency of the BOM #{1} should be equal to the selected currency {2},Red {0}: Valuta sastavnicu # {1} treba da bude jednaka odabrane valute {2},
Row {0}: Debit entry can not be linked with a {1},Row {0}: Debitne stavka ne može se povezati sa {1},
Row {0}: Depreciation Start Date is required,Red {0}: datum početka amortizacije je potreban,
Row {0}: Enter location for the asset item {1},Red {0}: Unesite lokaciju za stavku aktive {1},
Row {0}: Exchange Rate is mandatory,Red {0}: kursa obavezna,
Row {0}: Expected Value After Useful Life must be less than Gross Purchase Amount,Red {0}: Očekivana vrednost nakon korisnog života mora biti manja od iznosa bruto kupovine,
Row {0}: From Time and To Time is mandatory.,Red {0}: Od vremena i do vremena je obavezno.,
Row {0}: From Time and To Time of {1} is overlapping with {2},Red {0}: Od vremena i do vremena od {1} je preklapaju s {2},
Row {0}: From time must be less than to time,Red {0}: S vremena na vrijeme mora biti manje,
Row {0}: Hours value must be greater than zero.,Red {0}: Radno vrijednost mora biti veća od nule.,
Row {0}: Invalid reference {1},Red {0}: Invalid referentni {1},
Row {0}: Party / Account does not match with {1} / {2} in {3} {4},Red {0}: Party / računa ne odgovara {1} / {2} u {3} {4},
Row {0}: Party Type and Party is required for Receivable / Payable account {1},Red {0}: Party Tip i stranka je potreban za potraživanja / računa plaćaju {1},
Row {0}: Payment against Sales/Purchase Order should always be marked as advance,Row {0}: Plaćanje protiv Prodaja / narudžbenice treba uvijek biti označeni kao unaprijed,
Row {0}: Please check 'Is Advance' against Account {1} if this is an advance entry.,"Row {0}: Molimo provjerite 'Je li Advance ""protiv Account {1} ako je to unaprijed unos.",
Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges,Red {0}: Podesite razlog oslobađanja od poreza u porezima i naknadama na promet,
Row {0}: Please set the Mode of Payment in Payment Schedule,Red {0}: Molimo postavite Način plaćanja u Rasporedu plaćanja,
Row {0}: Please set the correct code on Mode of Payment {1},Red {0}: Molimo postavite ispravan kod na Način plaćanja {1},
Row {0}: Qty is mandatory,Red {0}: Količina je obvezno,
Row {0}: Quality Inspection rejected for item {1},Red {0}: Odbačena inspekcija kvaliteta za stavku {1},
Row {0}: UOM Conversion Factor is mandatory,Red {0}: UOM Faktor konverzije je obavezno,
Row {0}: select the workstation against the operation {1},Red {0}: izaberite radnu stanicu protiv operacije {1},
Row {0}: {1} Serial numbers required for Item {2}. You have provided {3}.,Red {0}: {1} Serijski brojevi potrebni za stavku {2}. Proveli ste {3}.,
Row {0}: {1} must be greater than 0,Red {0}: {1} mora biti veći od 0,
Row {0}: {1} {2} does not match with {3},Row {0}: {1} {2} ne odgovara {3},
Row {0}:Start Date must be before End Date,Red {0} : Datum početka mora biti prije datuma završetka,
Rows with duplicate due dates in other rows were found: {0},Redovi sa dupliciranim datumima u drugim redovima su pronađeni: {0},
Rules for adding shipping costs.,Pravila za dodavanjem troškove prijevoza .,
Rules for applying pricing and discount.,Pravila za primjenu cijene i popust .,
S.O. No.,S.O. Ne.,
SGST Amount,SGST Iznos,
SO Qty,SO Kol,
Safety Stock,Sigurnost Stock,
Salary,Plata,
Salary Slip submitted for period from {0} to {1},Plata za slanje poslata za period od {0} do {1},
Salary Structure must be submitted before submission of Tax Ememption Declaration,Struktura plaće mora se podnijeti prije podnošenja Izjave o porezu,
Sales,Prodaja,
Sales Account,Račun prodaje,
Sales Expenses,Prodajni troškovi,
Sales Funnel,Tok prodaje (Funnel),
Sales Invoice,Faktura prodaje,
Sales Invoice {0} has already been submitted,Prodajni računi {0} su već potvrđeni,
Sales Invoice {0} must be cancelled before cancelling this Sales Order,Prodaja Račun {0} mora biti otkazana prije poništenja ovu prodajnog naloga,
Sales Manager,Sales Manager,
Sales Master Manager,Sales Manager Master,
Sales Order,Narudžbe kupca,
Sales Order Item,Stavka narudžbe kupca,
Sales Order required for Item {0},Prodajnog naloga potrebna za točke {0},
Sales Order to Payment,Naloga prodaje na isplatu,
Sales Order {0} is not submitted,Prodajnog naloga {0} nije podnesen,
Sales Order {0} is not valid,Prodajnog naloga {0} nije ispravan,
Sales Order {0} is {1},Prodajnog naloga {0} je {1},
Sales Orders,Sales Orders,
Sales Partner,Prodajni partner,
Sales Pipeline,prodaja Pipeline,
Sales Price List,Sales Cjenovnik,
Sales Return,Povrat robe,
Sales Summary,Sažetak prodaje,
Sales Tax Template,Porez na promet Template,
Sales Team,Prodajni tim,
Sales User,Sales korisnika,
Sales and Returns,Prodaja i povratak,
Sales campaigns.,Prodajne kampanje.,
Sales orders are not available for production,Prodajni nalozi nisu dostupni za proizvodnju,
Salutation,Pozdrav,
Same Company is entered more than once,Ista firma je ušao više od jednom,
Same item cannot be entered multiple times.,Isti stavka ne može se upisati više puta.,
Same supplier has been entered multiple times,Istog dobavljača je ušao više puta,
Sample,Uzorak,
Sample Collection,Prikupljanje uzoraka,
Sample quantity {0} cannot be more than received quantity {1},Količina uzorka {0} ne može biti veća od primljene količine {1},
Sanctioned,sankcionisani,
Sand,Pesak,
Saturday,Subota,
Saved,Sačuvane,
Saving {0},Čuvanje {0},
Scan Barcode,Skenirajte bar kod,
Schedule,Raspored,
Schedule Admission,Raspored prijema,
Schedule Course,Raspored predmeta,
Schedule Date,Raspored Datum,
Schedule Discharge,Raspoređivanje rasporeda,
Scheduled,Planirano,
Scheduled Upto,Planirani Upto,
"Schedules for {0} overlaps, do you want to proceed after skiping overlaped slots ?","Rasporedi za {0} se preklapaju, da li želite da nastavite nakon preskakanja preklapanih slotova?",
Score cannot be greater than Maximum Score,Rezultat ne može biti veća od maksimalne Score,
Scorecards,Scorecards,
Scrapped,odbačen,
Search,Pretraga,
Search Results,Search Results,
Search Sub Assemblies,Traži Sub skupština,
"Search by item code, serial number, batch no or barcode","Pretraga po kodu stavke, serijskom broju, broju serije ili barkodu",
"Seasonality for setting budgets, targets etc.","Sezonski za postavljanje budžeta, ciljeva itd",
Secret Key,tajni ključ,
Secretary,Sekretarica,
Section Code,Kodeks sekcije,
Secured Loans,Osigurani krediti,
Securities & Commodity Exchanges,Vrijednosni papiri i robne razmjene,
Securities and Deposits,Vrijednosni papiri i depoziti,
See All Articles,Vidi sve članke,
See all open tickets,Pogledajte sve otvorene karte,
See past orders,Pogledajte prošla naređenja,
See past quotations,Pogledajte dosadašnje citate,
Select,Odaberi,
Select Alternate Item,Izaberite Alternativnu stavku,
Select Attribute Values,Odaberite vrijednosti atributa,
Select BOM,Izaberite BOM,
Select BOM and Qty for Production,Odaberite BOM i količina za proizvodnju,
"Select BOM, Qty and For Warehouse","Odaberite BOM, Količina i Za skladište",
Select Batch,Izaberite Batch,
Select Batch Numbers,Izaberite šarže,
Select Brand...,Odaberite Marka ...,
Select Company,Izaberite kompaniju,
Select Company...,Odaberite preduzeće...,
Select Customer,Izaberite Kupca,
Select Days,Izaberite Dani,
Select Default Supplier,Izaberite snabdjevač,
Select DocType,Odaberite DocType,
Select Fiscal Year...,Odaberite fiskalnu godinu ...,
Select Item (optional),Izaberite stavku (opcionalno),
Select Items based on Delivery Date,Izaberite stavke na osnovu datuma isporuke,
Select Items to Manufacture,Odaberi stavke za proizvodnju,
Select Loyalty Program,Odaberite Loyalty Program,
Select Patient,Izaberite Pacijent,
Select Possible Supplier,Odaberite Moguće dobavljač,
Select Quantity,Odaberite Količina,
Select Serial Numbers,Odaberite serijski brojevi,
Select Target Warehouse,Odaberite Target Skladište,
Select Warehouse...,Odaberite Warehouse ...,
Select an account to print in account currency,Izaberite nalog za štampanje u valuti računa,
Select at least one value from each of the attributes.,Izaberite najmanje jednu vrijednost od svakog atributa.,
Select change amount account,Izaberite promjene iznos računa,
Select company first,Prvo odaberite kompaniju,
Select students manually for the Activity based Group,Izbor studenata ručno za grupe aktivnosti na osnovu,
Select the customer or supplier.,Izaberite kupca ili dobavljača.,
Select the nature of your business.,Odaberite priroda vašeg poslovanja.,
Select the program first,Prvo izaberite program,
Select to add Serial Number.,Odaberite da dodate serijski broj.,
Select your Domains,Izaberite svoje domene,
Selected Price List should have buying and selling fields checked.,Izabrana cenovna lista treba da ima provereno kupovinu i prodaju.,
Sell,prodati,
Selling,Prodaja,
Selling Amount,Prodaja Iznos,
Selling Price List,Prodajni cjenik,
Selling Rate,Prodajna stopa,
"Selling must be checked, if Applicable For is selected as {0}","Prodaje se mora provjeriti, ako je primjenjivo za odabrano kao {0}",
Send Grant Review Email,Pošaljite e-poruku za Grant Review,
Send Now,Pošalji odmah,
Send SMS,Pošalji SMS,
Send mass SMS to your contacts,Pošalji masovne SMS poruke svojim kontaktima,
Sensitivity,Osjetljivost,
Sent,Poslano,
Serial No and Batch,Serijski broj i Batch,
Serial No is mandatory for Item {0},Serijski Nema je obvezna za točke {0},
Serial No {0} does not belong to Batch {1},Serijski broj {0} ne pripada Batch {1},
Serial No {0} does not belong to Delivery Note {1},Serijski Ne {0} ne pripada isporuke Napomena {1},
Serial No {0} does not belong to Item {1},Serijski Ne {0} ne pripada točki {1},
Serial No {0} does not belong to Warehouse {1},Serijski Ne {0} ne pripada Warehouse {1},
Serial No {0} does not belong to any Warehouse,Serijski broj {0} ne pripada nijednoj Skladište,
Serial No {0} does not exist,Serijski Ne {0} ne postoji,
Serial No {0} has already been received,Serijski Ne {0} već je primila,
Serial No {0} is under maintenance contract upto {1},Serijski Ne {0} je pod ugovorom za održavanje upto {1},
Serial No {0} is under warranty upto {1},Serijski Ne {0} je pod jamstvom upto {1},
Serial No {0} not found,Serial No {0} nije pronađena,
Serial No {0} not in stock,Serijski Ne {0} nije u dioničko,
Serial No {0} quantity {1} cannot be a fraction,Serijski Ne {0} {1} količina ne može bitidio,
Serial Nos Required for Serialized Item {0},Serijski Nos potrebna za serijaliziranom točke {0},
Serial Number: {0} is already referenced in Sales Invoice: {1},Serijski broj: {0} je već spomenut u prodaje Faktura: {1},
Serial Numbers,Serijski brojevi,
Serial Numbers in row {0} does not match with Delivery Note,Serijski brojevi u nizu {0} ne odgovara otpremnica,
Serial no {0} has been already returned,Serijski broj {0} je već vraćen,
Serial number {0} entered more than once,Serijski broj {0} ušao više puta,
Serialized Inventory,Serijalizovanoj zaliha,
Series Updated,Serija Updated,
Series Updated Successfully,Serija Updated uspješno,
Series is mandatory,Serija je obvezno,
Series {0} already used in {1},Serija {0} već koristi u {1},
Service,Usluga,
Service Level Agreement,Ugovor o nivou usluge,
Service Level Agreement.,Ugovor o nivou usluge.,
Service Level.,Nivo usluge.,
Service Stop Date cannot be after Service End Date,Servisni datum zaustavljanja ne može biti nakon datuma završetka usluge,
Service Stop Date cannot be before Service Start Date,Servisni datum zaustavljanja ne može biti pre početka usluge,
Services,Usluge,
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Zadane vrijednosti kao što su tvrtke , valute , tekuće fiskalne godine , itd.",
Set Details,Postavite detalje,
Set New Release Date,Podesite novi datum izdanja,
Set Project and all Tasks to status {0}?,Postavite Project i sve zadatke na status {0}?,
Set Status,Postavite status,
Set Tax Rule for shopping cart,Set poreza Pravilo za košarica,
Set as Closed,Postavi status Zatvoreno,
Set as Completed,Postavite kao dovršeno,
Set as Default,Postavi kao podrazumjevano,
Set as Lost,Postavi kao Lost,
Set as Open,Postavi status Otvoreno,
Set default inventory account for perpetual inventory,Postaviti zadani račun inventar za trajnu inventar,
Set this if the customer is a Public Administration company.,Podesite to ako je kupac kompanija iz javne uprave.,
Set {0} in asset category {1} or company {2},Postavite {0} u kategoriji aktive {1} ili kompaniju {2},
"Setting Events to {0}, since the Employee attached to the below Sales Persons does not have a User ID{1}","Postavljanje Događanja u {0}, jer zaposleni u prilogu ispod prodaje osoba nema korisniku ID {1}",
Setting defaults,Podešavanje podrazumevanih vrednosti,
Setting up Email,Postavljanje e-pošte,
Setting up Email Account,Postavljanje e-pošte,
Setting up Employees,Postavljanje zaposlenih,
Setting up Taxes,Postavljanje poreza,
Setting up company,Osnivanje kompanije,
Settings,Podešavanja,
"Settings for online shopping cart such as shipping rules, price list etc.","Postavke za online kupovinu košaricu poput shipping pravila, cjenik i sl",
Settings for website homepage,Postavke za web stranice homepage,
Settings for website product listing,Podešavanja za popis proizvoda na veb lokaciji,
Settled,Riješeni,
Setup Gateway accounts.,Podešavanje Gateway račune.,
Setup SMS gateway settings,Postavke Setup SMS gateway,
Setup cheque dimensions for printing,dimenzije ček setup za štampanje,
Setup default values for POS Invoices,Podesi podrazumevane vrednosti za POS Račune,
Setup mode of POS (Online / Offline),Način podešavanja POS (Online / Offline),
Setup your Institute in ERPNext,Postavite svoj Institut u ERPNext,
Share Balance,Podeli Balans,
Share Ledger,Share Ledger,
Share Management,Share Management,
Share Transfer,Share Transfer,
Share Type,Tip deljenja,
Shareholder,Akcionar,
Ship To State,Brod u državu,
Shipments,Pošiljke,
Shipping,Transport,
Shipping Address,Adresa isporuke,
"Shipping Address does not have country, which is required for this Shipping Rule","Adresa za dostavu nema zemlju, koja je potrebna za ovo Pravilo o otpremi",
Shipping rule only applicable for Buying,Pravilo o isporuci primenjivo samo za kupovinu,
Shipping rule only applicable for Selling,Pravilo o isporuci primenjuje se samo za prodaju,
Shopify Supplier,Shopify Supplier,
Shopping Cart,Korpa,
Shopping Cart Settings,Košarica Settings,
Short Name,Kratki naziv,
Shortage Qty,Nedostatak Qty,
Show Completed,Prikaži dovršeno,
Show Cumulative Amount,Prikaži kumulativni iznos,
Show Open,Pokaži otvoren,
Show Opening Entries,Prikaži unose otvaranja,
Show Payment Details,Prikaži podatke o plaćanju,
Show Return Entries,Prikaži povratne unose,
Show Variant Attributes,Prikaži varijante atributa,
Show Variants,Show Varijante,
Show closed,Show zatvoren,
Show exploded view,Pokažite eksplodiran pogled,
Show only POS,Prikaži samo POS,
Show unclosed fiscal year's P&L balances,Pokaži Neriješeni fiskalnu godinu P &amp; L salda,
Show zero values,Pokazati nulte vrijednosti,
Silt,Silt,
Single Variant,Jedinstvena varijanta,
Single unit of an Item.,Jedna jedinica stavku.,
"Skipping Leave Allocation for the following employees, as Leave Allocation records already exists against them. {0}","Preskočite raspodelu raspoređivanja za sledeće zaposlene, jer evidencije o izuzeću već postoje protiv njih. {0}",
Slideshow,Slideshow,
Slots for {0} are not added to the schedule,Slotovi za {0} se ne dodaju u raspored,
Small,Mali,
Soap & Detergent,Sapun i deterdžent,
Software,Software,
Software Developer,Software Developer,
Softwares,softvera,
Soil compositions do not add up to 100,Sastave zemljišta ne daju do 100,
Sold,prodan,
Some emails are invalid,Neki e-mailovi su nevažeći,
Some information is missing,Neke informacije nedostaju,
Something went wrong!,Nešto nije bilo u redu!,
"Sorry, Serial Nos cannot be merged","Žao nam je , Serial Nos ne mogu spojiti",
Source,Izvor,
Source Name,izvor ime,
Source Warehouse,Izvorno skladište,
Source and Target Location cannot be same,Izvor i ciljna lokacija ne mogu biti isti,
Source and target warehouse cannot be same for row {0},Izvor i ciljna skladište ne može biti isti za redom {0},
Source and target warehouse must be different,Izvor i meta skladište mora biti drugačiji,
Source of Funds (Liabilities),Izvor sredstava ( pasiva),
Source warehouse is mandatory for row {0},Izvor skladište je obvezno za redom {0},
Specified BOM {0} does not exist for Item {1},Navedene BOM {0} ne postoji za Stavka {1},
Split,Podijeliti,
Split Batch,Split Batch,
Split Issue,Split Issue,
Sports,sportovi,
Standard,Standard,
Standard Buying,Standardna kupnju,
Standard Selling,Standardna prodaja,
Standard contract terms for Sales or Purchase.,Standardni uvjeti ugovora za prodaju ili kupnju.,
Start Date,Datum početka,
Start Date of Agreement can't be greater than or equal to End Date.,Datum početka ugovora ne može biti veći ili jednak Krajnjem datumu.,
Start Year,Početak godine,
Start date should be less than end date for Item {0},Početak bi trebao biti manji od krajnjeg datuma za točke {0},
Start date should be less than end date for task {0},Datum početka trebalo bi da bude manji od datuma završetka zadatka {0},
Start day is greater than end day in task '{0}',Dan početka je veći od kraja dana u zadatku &#39;{0}&#39;,
Start on,Počnite,
State,State,
State/UT Tax,Porez na države i UT,
Statement of Account,Izjava o računu,
Status must be one of {0},Status mora biti jedan od {0},
Stock,Zaliha,
Stock Adjustment,Stock Podešavanje,
Stock Analytics,Stock Analytics,
Stock Assets,dionicama u vrijednosti,
Stock Available,Stock Available,
Stock Balance,Kataloški bilanca,
Stock Entries already created for Work Order ,Upis zaliha već je kreiran za radni nalog,
Stock Entry,Kataloški Stupanje,
Stock Entry {0} created,Stock Entry {0} stvorio,
Stock Entry {0} is not submitted,Stock upis {0} nije podnesen,
Stock Expenses,Stock Troškovi,
Stock In Hand,Stock u ruci,
Stock Items,Stock Predmeti,
Stock Ledger,Stock Ledger,
Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Stock Ledger unosi i GL unosi se ponovo postavila za odabrane Kupovina Primici,
Stock Levels,Stock Nivoi,
Stock Liabilities,Stock Obveze,
Stock Qty,zalihama Količina,
Stock Received But Not Billed,Stock primljeni Ali ne Naplaćeno,
Stock Reports,Stock Izvještaji,
Stock Summary,Stock Pregled,
Stock Transactions,Stock Transakcije,
Stock UOM,Kataloški UOM,
Stock Value,Stock vrijednost,
Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},Stock balans u Batch {0} će postati negativan {1} {2} za tačka na skladištu {3},
Stock cannot be updated against Delivery Note {0},Dionica ne može biti obnovljeno protiv isporuke Napomena {0},
Stock cannot be updated against Purchase Receipt {0},Stock se ne može ažurirati protiv kupovine Prijem {0},
Stock cannot exist for Item {0} since has variants,Stock ne može postojati za Stavka {0} od ima varijante,
Stock transactions before {0} are frozen,Stock transakcije prije {0} se zamrznut,
Stop,zaustaviti,
Stopped,Zaustavljen,
"Stopped Work Order cannot be cancelled, Unstop it first to cancel","Prekinuto radno porudžbanje ne može se otkazati, Unstop prvi da otkaže",
Stores,prodavaonice,
Student,Student,
Student Activity,student aktivnost,
Student Address,student adresa,
Student Admissions,student Prijemni,
Student Attendance,student Posjeta,
"Student Batches help you track attendance, assessments and fees for students","Student Paketi pomoći da pratiti prisustvo, procjene i naknade za studente",
Student Email Address,Student-mail adresa,
Student Email ID,Student-mail ID,
Student Group,student Group,
Student Group Strength,Student Group Strength,
Student Group is already updated.,Student Grupa je već ažurirana.,
Student Group: ,Student Grupa:,
Student ID,Student ID,
Student ID: ,Student ID:,
Student LMS Activity,Aktivnost učenika LMS,
Student Mobile No.,Student Mobile No.,
Student Name,Ime studenta,
Student Name: ,Ime studenta:,
Student Report Card,Studentski izveštaj kartica,
Student is already enrolled.,Student je već upisana.,
Student {0} - {1} appears Multiple times in row {2} & {3},Student {0} - {1} pojavljuje više puta u nizu {2} i {3},
Student {0} does not belong to group {1},Student {0} ne pripada grupi {1},
Student {0} exist against student applicant {1},Student {0} postoje protiv podnosioca prijave student {1},
"Students are at the heart of the system, add all your students","Studenti su u srcu sistema, dodajte sve svoje studente",
Sub Assemblies,pod skupštine,
Sub Type,Pod Tip,
Sub-contracting,Podugovaranje,
Subcontract,Podugovor,
Subject,Predmet,
Submit,Potvrdi,
Submit this Work Order for further processing.,Pošaljite ovaj nalog za dalju obradu.,
Subscription,Pretplata,
Subscription Management,Upravljanje pretplatama,
Subscriptions,Pretplate,
Subtotal,suma stavke,
Successful,Uspešno,
Successfully Reconciled,Uspješno Pomirio,
Successfully Set Supplier,Uspešno postavite dobavljača,
Successfully created payment entries,Uspješno su kreirani unosi plaćanja,
Successfully deleted all transactions related to this company!,Uspješno obrisane sve transakcije koje se odnose na ove kompanije!,
Sum of Scores of Assessment Criteria needs to be {0}.,Zbir desetine Kriteriji procjene treba da bude {0}.,
Sum of points for all goals should be 100. It is {0},Zbir bodova za sve ciljeve bi trebao biti 100. To je {0},
Summary,Sažetak,
Summary for this month and pending activities,Sažetak za ovaj mjesec i aktivnostima na čekanju,
Summary for this week and pending activities,Pregled za ovaj tjedan i aktivnostima na čekanju,
Sunday,Nedjelja,
Suplier,Suplier,
Supplier,Dobavljači,
Supplier Group,Grupa dobavljača,
Supplier Group master.,Glavni tim dobavljača.,
Supplier Id,Dobavljač Id,
Supplier Invoice Date cannot be greater than Posting Date,Dobavljač Datum računa ne može biti veći od Datum knjiženja,
Supplier Invoice No,Dobavljač Račun br,
Supplier Invoice No exists in Purchase Invoice {0},Dobavljač Račun ne postoji u fakturi {0},
Supplier Name,Dobavljač Ime,
Supplier Part No,Dobavljač dio br,
Supplier Quotation,Dobavljač Ponuda,
Supplier Scorecard,Scorecard dobavljača,
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Dobavljač skladišta obvezan je za sub - ugovoreni kupiti primitka,
Supplier database.,Šifarnik dobavljača,
Supplier {0} not found in {1},Dobavljač {0} nije pronađen u {1},
Supplier(s),Dobavljač (s),
Supplies made to UIN holders,Nabavka za držače UIN-a,
Supplies made to Unregistered Persons,Nabavka za neregistrovane osobe,
Suppliies made to Composition Taxable Persons,Isporuke za porezne obveznike na sastav,
Supply Type,Tip isporuke,
Support,Podrška,
Support Analytics,Podrska za Analitiku,
Support Settings,podrška Postavke,
Support Tickets,Podrška ulaznice,
Support queries from customers.,Podrska zahtjeva od strane korisnika,
Susceptible,Podložno,
Sync has been temporarily disabled because maximum retries have been exceeded,Sinhronizacija je privremeno onemogućena jer su prekoračeni maksimalni pokušaji,
Syntax error in condition: {0},Sintaksna greška u stanju: {0},
Syntax error in formula or condition: {0},Sintaksa greška u formuli ili stanja: {0},
System Manager,System Manager,
TDS Rate %,TDS stopa%,
Tap items to add them here,Dodirnite stavke da biste ih dodali ovdje,
Target,Meta,
Target ({}),Cilj ({}),
Target On,Target Na,
Target Warehouse,Ciljana galerija,
Target warehouse is mandatory for row {0},Target skladište je obvezno za redom {0},
Task,Zadatak,
Tasks,zadataka,
Tasks have been created for managing the {0} disease (on row {1}),Zadaci su kreirani za upravljanje {0} bolesti (na redu {1}),
Tax,Porez,
Tax Assets,porezna imovina,
Tax Category,Porezna kategorija,
Tax Category for overriding tax rates.,Porezna kategorija za previsoke porezne stope.,
"Tax Category has been changed to ""Total"" because all the Items are non-stock items","Porez Kategorija je promijenjen u &quot;Total&quot;, jer svi proizvodi bez stanju proizvodi",
Tax ID,Porez ID,
Tax Id: ,Porezni ID:,
Tax Rate,Porezna stopa,
Tax Rule Conflicts with {0},Porez pravilo sukoba sa {0},
Tax Rule for transactions.,Porez pravilo za transakcije.,
Tax Template is mandatory.,Porez Template je obavezno.,
Tax Withholding rates to be applied on transactions.,Poreske stope zadržavanja poreza na transakcije.,
Tax template for buying transactions.,Porezna Predložak za kupnju transakcije .,
Tax template for item tax rates.,Obrazac poreza za porezne stope na stavke.,
Tax template for selling transactions.,Porezna predložak za prodaju transakcije .,
Taxable Amount,Oporezivi iznos,
Taxes,Porezi,
Technology,Tehnologija,
Telecommunications,Telekomunikacije,
Telephone Expenses,Telefonski troškovi,
Television,Televizija,
Template Name,template Name,
Template of terms or contract.,Predložak termina ili ugovor.,
Templates of supplier scorecard criteria.,Šabloni za kriterijume rezultata dobavljača.,
Templates of supplier scorecard variables.,Šabloni varijabli indeksa dobavljača.,
Templates of supplier standings.,Šabloni pozicija dobavljača.,
Temporarily on Hold,Privremeno na čekanju,
Temporary,Privremen,
Temporary Accounts,Privremeni računi,
Temporary Opening,Privremeno otvaranje,
Terms and Conditions,Odredbe i uvjeti,
Terms and Conditions Template,Uvjeti predloška,
Territory,Regija,
Test,Test,
Thank you for your business!,Hvala vam za vaše poslovanje!,
The 'From Package No.' field must neither be empty nor it's value less than 1.,&quot;Od paketa br.&quot; polje ne sme biti prazno niti je vrijednost manja od 1.,
The Brand,The Brand,
The Item {0} cannot have Batch,Stavka {0} ne može imati Batch,
The Loyalty Program isn't valid for the selected company,Program lojalnosti ne važi za izabranu kompaniju,
The Payment Term at row {0} is possibly a duplicate.,Rok plaćanja na redu {0} je možda duplikat.,
The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,Termin Završni datum ne može biti ranije od termina Ozljede Datum. Molimo ispravite datume i pokušajte ponovo.,
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.,Termin Završni datum ne može biti kasnije od kraja godine Datum akademske godine za koji je vezana pojam (akademska godina {}). Molimo ispravite datume i pokušajte ponovo.,
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.,Termin Ozljede Datum ne može biti ranije od godine Početak Datum akademske godine za koji je vezana pojam (akademska godina {}). Molimo ispravite datume i pokušajte ponovo.,
The Year End Date cannot be earlier than the Year Start Date. Please correct the dates and try again.,The Year Završni datum ne može biti ranije od godine Ozljede Datum. Molimo ispravite datume i pokušajte ponovo.,
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.,"Iznos od {0} postavljen na ovaj zahtev za plaćanje razlikuje se od obračunatog iznosa svih planova plaćanja: {1}. Pre nego što pošaljete dokument, proverite da li je to tačno.",
The field From Shareholder cannot be blank,Polje Od dioničara ne može biti prazno,
The field To Shareholder cannot be blank,Polje Za dioničara ne može biti prazno,
The fields From Shareholder and To Shareholder cannot be blank,Polja Od dioničara i akcionara ne mogu biti prazna,
The folio numbers are not matching,Folio brojevi se ne podudaraju,
The holiday on {0} is not between From Date and To Date,Na odmor na {0} nije između Od datuma i Do datuma,
The name of the institute for which you are setting up this system.,U ime Instituta za koju se postavljanje ovog sistema.,
The name of your company for which you are setting up this system.,Ime vaše tvrtke za koje ste postavljanje ovog sustava .,
The number of shares and the share numbers are inconsistent,Broj akcija i brojevi učešća su nedosljedni,
The payment gateway account in plan {0} is different from the payment gateway account in this payment request,Račun plaćačkog plaćanja u planu {0} razlikuje se od naloga za plaćanje u ovom zahtjevu za plaćanje,
The selected BOMs are not for the same item,Izabrani sastavnica nisu za isti predmet,
The selected item cannot have Batch,Izabrana stavka ne može imati Batch,
The seller and the buyer cannot be the same,Prodavac i kupac ne mogu biti isti,
The shareholder does not belong to this company,Akcionar ne pripada ovoj kompaniji,
The shares already exist,Akcije već postoje,
The shares don't exist with the {0},Akcije ne postoje sa {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","Zadatak je zamišljen kao pozadinski posao. U slučaju da u pozadini postoji problem s obradom, sistem će dodati komentar o grešci u ovom usklađivanju dionica i vratiti se u fazu skica",
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Zatim Cjenovna Pravila filtriraju se temelji na Kupca, Kupac Group, Teritorij, dobavljač, proizvođač tip, Kampanja, prodajni partner i sl.",
"There are inconsistencies between the rate, no of shares and the amount calculated","Postoje nedoslednosti između stope, bez dionica i iznosa obračunatog",
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.,Na osnovu ukupne potrošnje može biti više faktora sakupljanja. Ali faktor konverzije za otkup će uvek biti isti za sve nivoe.,
There can only be 1 Account per Company in {0} {1},Tu može biti samo 1 račun po kompanije u {0} {1},
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Tu može biti samo jedan Dostava Pravilo Stanje sa 0 ili prazni vrijednost za "" Da Value """,
There is not enough leave balance for Leave Type {0},Nema dovoljno ravnotežu dopust za dozvolu tipa {0},
There is nothing to edit.,Ne postoji ništa za uređivanje .,
There isn't any item variant for the selected item,Za izabranu stavku nema nijedne varijante stavki,
"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.","Izgleda da postoji problem sa konfiguracijom GoCardless servera. Ne brinite, u slučaju neuspeha, iznos će vam biti vraćen na vaš račun.",
There were errors creating Course Schedule,Bilo je grešaka u kreiranju rasporeda kursa,
There were errors.,Bilo je grešaka .,
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,"Ovaj proizvod predložak i ne može se koristiti u transakcijama. Stavka atributi će se kopirati u više varijanti, osim 'Ne Copy ""je postavljena",
This Item is a Variant of {0} (Template).,Ovaj artikal je varijanta {0} (Template).,
This Month's Summary,Ovaj mjesec je sažetak,
This Week's Summary,Ovonedeljnom Pregled,
This action will stop future billing. Are you sure you want to cancel this subscription?,Ova akcija će zaustaviti buduće obračunavanje. Da li ste sigurni da želite otkazati ovu pretplatu?,
This covers all scorecards tied to this Setup,Ovo pokriva sve sisteme rezultata povezanih sa ovim postavkama,
This document is over limit by {0} {1} for item {4}. Are you making another {3} against the same {2}?,Ovaj dokument je preko granice po {0} {1} za stavku {4}. Da li što još {3} u odnosu na isti {2}?,
This is a root account and cannot be edited.,To jekorijen račun i ne može se mijenjati .,
This is a root customer group and cannot be edited.,To jekorijen skupini kupaca i ne može se mijenjati .,
This is a root department and cannot be edited.,Ovo je korijensko odjeljenje i ne može se uređivati.,
This is a root healthcare service unit and cannot be edited.,Ovo je koren zdravstvenog servisa i ne može se uređivati.,
This is a root item group and cannot be edited.,To jekorijen stavka grupa i ne može se mijenjati .,
This is a root sales person and cannot be edited.,To jekorijen prodavač i ne može se mijenjati .,
This is a root supplier group and cannot be edited.,Ovo je korenska grupa dobavljača i ne može se uređivati.,
This is a root territory and cannot be edited.,To jekorijen teritorij i ne može se mijenjati .,
This is an example website auto-generated from ERPNext,Ovo je primjer web stranica automatski generira iz ERPNext,
This is based on logs against this Vehicle. See timeline below for details,Ovo se zasniva na rezanje protiv ovog vozila. Pogledajte vremenski okvir ispod za detalje,
This is based on stock movement. See {0} for details,To se temelji na zalihama pokreta. Vidi {0} za detalje,
This is based on the Time Sheets created against this project,To se temelji na vrijeme listovi stvorio protiv ovog projekta,
This is based on the attendance of this Student,To se temelji na prisustvo ovog Student,
This is based on transactions against this Customer. See timeline below for details,Ovo se zasniva na transakcije protiv ovog kupaca. Pogledajte vremenski okvir ispod za detalje,
This is based on transactions against this Healthcare Practitioner.,Ovo se zasniva na transakcijama protiv ovog zdravstvenog lekara.,
This is based on transactions against this Patient. See timeline below for details,Ovo se zasniva na transakcijama protiv ovog pacijenta. Za detalje pogledajte vremenski okvir ispod,
This is based on transactions against this Sales Person. See timeline below for details,Ovo se zasniva na transakcijama protiv ovog Prodavca. Za detalje pogledajte vremenski okvir ispod,
This is based on transactions against this Supplier. See timeline below for details,Ovo se zasniva na transakcije protiv tog dobavljača. Pogledajte vremenski okvir ispod za detalje,
This {0} conflicts with {1} for {2} {3},Ovo {0} sukobe sa {1} za {2} {3},
Time Sheet for manufacturing.,Time Sheet za proizvodnju.,
Time Tracking,Time Tracking,
"Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}","Vremenski slot preskočen, slot {0} do {1} se preklapa sa postojećim slotom {2} do {3}",
Time slots added,Dodato je vremenska utrka,
Time(in mins),Time (u min),
Timer,Tajmer,
Timer exceeded the given hours.,Tajmer je prekoračio zadate sate.,
Timesheet,kontrolna kartica,
Timesheet for tasks.,Timesheet za zadatke.,
Timesheet {0} is already completed or cancelled,Timesheet {0} je već završen ili otkazan,
Timesheets,Timesheets,
"Timesheets help keep track of time, cost and billing for activites done by your team","Timesheets pomoći pratiti vremena, troškova i naplate za aktivnostima obavlja svoj tim",
Titles for print templates e.g. Proforma Invoice.,Naslovi za ispis predložaka pr Predračuna.,
To,To,
To Address 1,Za adresu 1,
To Address 2,Na adresu 2,
To Bill,To Bill,
To Date,Za datum,
To Date cannot be before From Date,Do danas ne može biti prije od datuma,
To Date cannot be less than From Date,Datum ne može biti manji od datuma,
To Date must be greater than From Date,Do datuma mora biti veći od Od datuma,
To Date should be within the Fiscal Year. Assuming To Date = {0},Za datum mora biti unutar fiskalne godine. Pod pretpostavkom da bi datum = {0},
To Datetime,To datuma i vremena,
To Deliver,Dostaviti,
To Deliver and Bill,Dostaviti i Bill,
To Fiscal Year,Do fiskalne godine,
To GSTIN,Za GSTIN,
To Party Name,U ime stranke,
To Pin Code,Za PIN kod,
To Place,Da postavim,
To Receive,Da Primite,
To Receive and Bill,Da primi i Bill,
To State,Držati,
To Warehouse,Za skladište,
To create a Payment Request reference document is required,Za kreiranje plaćanja Zahtjev je potrebno referentni dokument,
"To filter based on Party, select Party Type first","Da biste filtrirali na osnovu stranke, izaberite Party prvog tipa",
"To get the best out of ERPNext, we recommend that you take some time and watch these help videos.","Da biste dobili najbolje iz ERPNext, preporučujemo vam da malo vremena i gledati ove snimke pomoć.",
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","To uključuje porez u redu {0} u stopu točke , porezi u redovima {1} također moraju biti uključeni",
To make Customer based incentive schemes.,Da napravimo šeme podsticajnih zasnovanih na kupcima.,
"To merge, following properties must be same for both items","Spojiti , ova svojstva moraju biti isti za obje stavke",
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","Da se ne primjenjuje pravilo Cijene u određenoj transakciji, svim primjenjivim pravilima cijena bi trebala biti onemogućen.",
"To set this Fiscal Year as Default, click on 'Set as Default'","Za postavljanje ove fiskalne godine kao zadano , kliknite na "" Set as Default '",
To view logs of Loyalty Points assigned to a Customer.,Da biste videli evidencije o Lojalnim Tačkama dodeljenim Korisniku.,
To {0},Za {0},
To {0} | {1} {2},Za {0} | {1} {2},
Toggle Filters,Prebaci filtere,
Too many columns. Export the report and print it using a spreadsheet application.,Previše stupovi. Izvesti izvješće i ispisati pomoću aplikacije za proračunske tablice.,
Tools,Alati,
Total (Credit),Ukupno (kredit),
Total (Without Tax),Ukupno (bez poreza),
Total Achieved,Ukupno Ostvareni,
Total Actual,Ukupno Actual,
Total Allocated Leaves,Ukupno izdvojene liste,
Total Amount,Ukupan iznos,
Total Amount Credited,Ukupan iznos kredita,
Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Ukupno Primjenjivo Optužbe na račun za prodaju Predmeti sto mora biti isti kao Ukupni porezi i naknada,
Total Budget,Ukupni budžet,
Total Collected: {0},Ukupno prikupljeno: {0},
Total Commission,Ukupno komisija,
Total Contribution Amount: {0},Ukupan iznos doprinosa: {0},
Total Credit/ Debit Amount should be same as linked Journal Entry,Ukupan iznos kredita / zaduženja treba da bude isti kao vezani dnevnik,
Total Debit must be equal to Total Credit. The difference is {0},Ukupno zaduženje mora biti jednak ukupnom kreditnom .,
Total Invoiced Amount,Ukupno Iznos dostavnice,
Total Order Considered,Ukupno Order Smatran,
Total Order Value,Ukupna vrijednost Order,
Total Outgoing,Ukupno Odlazni,
Total Outstanding,Total Outstanding,
Total Outstanding Amount,Ukupno preostali iznos,
Total Outstanding: {0},Ukupno izvanredan: {0},
Total Paid Amount,Ukupno uplaćeni iznos,
Total Payment Amount in Payment Schedule must be equal to Grand / Rounded Total,Ukupan iznos plaćanja u rasporedu plaćanja mora biti jednak Grand / zaokruženom ukupno,
Total Payments,Ukupna plaćanja,
Total Qty,Ukupno Qty,
Total Quantity,Ukupna količina,
Total Revenue,Ukupan prihod,
Total Student,Total Student,
Total Target,Ukupna ciljna,
Total Tax,Ukupno porez,
Total Taxable Amount,Ukupan iznos oporezivanja,
Total Taxable Value,Ukupna oporeziva vrednost,
Total Unpaid: {0},Ukupno Neplaćeni: {0},
Total Variance,Ukupno Varijansa,
Total Weightage of all Assessment Criteria must be 100%,Ukupno weightage svih Kriteriji ocjenjivanja mora biti 100%,
Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),Ukupno unaprijed ({0}) protiv Order {1} ne može biti veći od Grand Ukupno ({2}),
Total advance amount cannot be greater than total claimed amount,Ukupan iznos uplate ne može biti veći od ukupne tražene iznose,
Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Ukupno dodijeljeno liste su više dana od maksimalne dodjele tipa {0} za zaposlenog {1} u tom periodu,
Total allocated leaves are more than days in the period,Ukupno izdvojene Listovi su više od nekoliko dana u razdoblju,
Total allocated percentage for sales team should be 100,Ukupno dodijeljeno postotak za prodajni tim bi trebao biti 100,
Total cannot be zero,Ukupna ne može biti nula,
Total contribution percentage should be equal to 100,Ukupni procenat doprinosa treba biti jednak 100,
Total hours: {0},Ukupan broj sati: {0},
Total {0} ({1}),Ukupno {0} ({1}),
"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'","Ukupno {0} za sve stavke je nula, možda biste trebali promijeniti &#39;Rasporedite Optužbe na osnovu&#39;",
Total(Amt),Ukupno (Amt),
Total(Qty),Ukupno (Qty),
Traceability,Sljedivost,
Traceback,Traceback,
Track Leads by Lead Source.,Vodite praćenje po izvorima izvora.,
Transaction,Transakcija,
Transaction Date,Transakcija Datum,
Transaction Type,Tip transakcije,
Transaction currency must be same as Payment Gateway currency,Transakcija valuta mora biti isti kao i Payment Gateway valutu,
Transaction not allowed against stopped Work Order {0},Transakcija nije dozvoljena zaustavljen Radni nalog {0},
Transaction reference no {0} dated {1},Transakcija Ref {0} od {1},
Transactions,Transakcije,
Transactions can only be deleted by the creator of the Company,Transakcije mogu se obrisati samo kreator Društva,
Transfer,Prijenos,
Transfer Material,Prijenos materijala,
Transfer Type,Tip prenosa,
Transfer an asset from one warehouse to another,Transfer imovine iz jednog skladišta u drugo,
Transfered,Prenose,
Transferred Quantity,Prenesena količina,
Transport Receipt Date,Datum prijema prevoza,
Transport Receipt No,Transportni prijem br,
Transportation,Prevoznik,
Transporter ID,ID transportera,
Transporter Name,Transporter Ime,
Travel Expenses,putni troškovi,
Tree Type,Tip stabla,
Tree of Bill of Materials,Drvo Bill of Materials,
Tree of Item Groups.,Tree stavke skupina .,
Tree of Procedures,Drvo postupaka,
Tree of Quality Procedures.,Drvo postupaka kvaliteta.,
Tree of financial Cost Centers.,Tree financijskih troškova centara.,
Tree of financial accounts.,Tree financijskih računa.,
Treshold {0}% appears more than once,Prag {0}% se pojavljuje više od jednom,
Trial Period End Date Cannot be before Trial Period Start Date,Krajnji datum probnog perioda ne može biti pre početka probnog perioda,
Trialling,Trialling,
Type of Business,Tip poslovanja,
Types of activities for Time Logs,Vrste aktivnosti za vrijeme Trupci,
UOM,UOM,
UOM Conversion factor is required in row {0},Faktor UOM pretvorbe je potrebno u redu {0},
UOM coversion factor required for UOM: {0} in Item: {1},UOM faktor coversion potrebna za UOM: {0} u točki: {1},
URL,URL,
Unable to find DocType {0},Nije moguće pronaći DocType {0},
Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Nije moguće pronaći kurs za {0} do {1} za ključni datum {2}. Molimo vas da ručno stvoriti Mjenjačnica rekord,
Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nije moguće pronaći rezultat od {0}. Morate imati stojeće rezultate koji pokrivaju 0 do 100,
Unable to find variable: ,Nije moguće pronaći varijablu:,
Unblock Invoice,Unblock Faktura,
Uncheck all,Poništi sve,
Unclosed Fiscal Years Profit / Loss (Credit),Neriješeni fiskalne godine dobit / gubitak (kredit),
Unit,Jedinica,
Unit of Measure,Jedinica mjere,
Unit of Measure {0} has been entered more than once in Conversion Factor Table,Jedinica mjere {0} je ušao više od jednom u konverzije Factor tablici,
Unknown,nepoznat,
Unpaid,Neplaćeno,
Unsecured Loans,unsecured krediti,
Unsubscribe from this Email Digest,Odjavili od ovog mail Digest,
Unsubscribed,Pretplatu,
Until,Do,
Unverified Webhook Data,Neprevereni podaci Webhook-a,
Update Account Name / Number,Ažurirajte ime / broj računa,
Update Account Number / Name,Ažurirajte broj računa / ime,
Update Cost,Update cost,
Update Items,Ažurirati stavke,
Update Print Format,Update Print Format,
Update bank payment dates with journals.,Update banka datum plaćanja s časopisima.,
Update in progress. It might take a while.,Ažuriranje je u toku. Možda će potrajati neko vrijeme.,
Update rate as per last purchase,Stopa ažuriranja po posljednjoj kupovini,
Update stock must be enable for the purchase invoice {0},Ažuriranje zaliha mora biti omogućeno za fakturu za kupovinu {0},
Updating Variants...,Ažuriranje varijanti ...,
Upload your letter head and logo. (you can edit them later).,Unos glavu pismo i logo. (Možete ih kasnije uređivanje).,
Upper Income,Viši Prihodi,
Use Sandbox,Koristite Sandbox,
Used Leaves,Korišćeni listovi,
User,User,
User ID,Korisnički ID,
User ID not set for Employee {0},Korisnik ID nije postavljen za zaposlenika {0},
User Remark,Upute Zabilješka,
User has not applied rule on the invoice {0},Korisnik nije primijenio pravilo na računu {0},
User {0} already exists,Korisnik {0} već postoji,
User {0} created,Korisnik {0} kreiran,
User {0} does not exist,Korisnik {0} ne postoji,
User {0} doesn't have any default POS Profile. Check Default at Row {1} for this User.,Korisnik {0} nema podrazumevani POS profil. Provjerite Podrazumevano na Rowu {1} za ovog Korisnika.,
User {0} is already assigned to Employee {1},Korisnik {0} već dodijeljena zaposlenika {1},
User {0} is already assigned to Healthcare Practitioner {1},Korisnik {0} je već dodeljen Zdravstvenom lekaru {1},
Users,Korisnici,
Utility Expenses,komunalna Troškovi,
Valid From Date must be lesser than Valid Upto Date.,Važi od datuma mora biti manji od važećeg datuma.,
Valid Till,Valid Till,
Valid from and valid upto fields are mandatory for the cumulative,Vrijedna i valjana upto polja obavezna su za kumulativ,
Valid from date must be less than valid upto date,Vrijedi od datuma mora biti manje od važećeg do datuma,
Valid till date cannot be before transaction date,Vrijedi do datuma ne može biti prije datuma transakcije,
Validity,Punovažnost,
Validity period of this quotation has ended.,Rok važnosti ove ponude je završen.,
Valuation Rate,Vrednovanje Stopa,
Valuation Rate is mandatory if Opening Stock entered,Vrednovanje Rate je obavezno ako ušla Otvaranje Stock,
Valuation type charges can not marked as Inclusive,Prijava tip vrednovanja ne može označiti kao Inclusive,
Value Or Qty,"Vrijednost, ili kol",
Value Proposition,Value Proposition,
Value for Attribute {0} must be within the range of {1} to {2} in the increments of {3} for Item {4},Vrijednost za Atributi {0} mora biti u rasponu od {1} na {2} u koracima od {3} za Stavka {4},
Value must be between {0} and {1},Vrijednost mora biti između {0} i {1},
"Values of exempt, nil rated and non-GST inward supplies","Vrijednosti izuzetih, nulta ocjenjivanja i ulaznih zaliha koje nisu GST",
Variance,Varijacija,
Variance ({}),Varijanca ({}),
Variant,Varijanta,
Variant Attributes,Varijanta atributi,
Variant Based On cannot be changed,Varijanta zasnovana na osnovi se ne može promijeniti,
Variant Details Report,Varijanta Detalji Izveštaj,
Variant creation has been queued.,Kreiranje varijante je stavljeno u red.,
Vehicle Expenses,Troškovi vozila,
Vehicle No,Ne vozila,
Vehicle Type,Tip vozila,
Vehicle/Bus Number,Vozila / Autobus broj,
Venture Capital,Preduzetnički kapital,
View Chart of Accounts,Pregled grafikona računa,
View Fees Records,View Fees Records,
View Form,Pogledajte obrazac,
View Lab Tests,Pregled laboratorijskih testova,
View Leads,Pogledaj potencijalne kupce,
View Ledger,Pogledaj Ledger,
View Now,Pregled Sada,
View a list of all the help videos,Pogledaj listu svih snimke Pomoć,
View in Cart,Pogledaj u košaricu,
Visit report for maintenance call.,Posjetite izvješće za održavanje razgovora.,
Visit the forums,Posjetite forum,
Vital Signs,Vitalni znaci,
Volunteer,Dobrovoljno,
Volunteer Type information.,Volonterski podaci o tipu.,
Volunteer information.,Volonterske informacije.,
Voucher #,bon #,
Voucher No,Bon Ne,
Voucher Type,Bon Tip,
WIP Warehouse,WIP skladište,
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,"Skladište se ne može izbrisati , kao entry stock knjiga postoji za to skladište .",
Warehouse cannot be changed for Serial No.,Skladište se ne može promijeniti za serijskog broja,
Warehouse is mandatory,Skladište je obavezno,
Warehouse is mandatory for stock Item {0} in row {1},Skladište je obvezno za skladišne proizvode {0} u redu {1},
Warehouse not found in the system,Skladište nije pronađeno u sistemu,
"Warehouse required at Row No {0}, please set default warehouse for the item {1} for the company {2}","Skladište je potrebno na redosledu {0}, molimo postavite podrazumevano skladište za predmet {1} za kompaniju {2}",
Warehouse required for stock Item {0},Skladište je potrebno za skladišne proizvode {0},
Warehouse {0} can not be deleted as quantity exists for Item {1},Skladište {0} ne može biti izbrisano ako na njemu ima artikal {1},
Warehouse {0} does not belong to company {1},Skladište {0} ne pripada tvrtki {1},
Warehouse {0} does not exist,Skladište {0} ne postoji,
"Warehouse {0} is not linked to any account, please mention the account in  the warehouse record or set default inventory account in company {1}.","Skladište {0} nije povezan na bilo koji račun, navedite račun u zapisnik skladištu ili postaviti zadani popis računa u firmi {1}.",
Warehouses with child nodes cannot be converted to ledger,Skladišta s djecom čvorovi se ne može pretvoriti u Ledger,
Warehouses with existing transaction can not be converted to group.,Skladišta sa postojećim transakcija se ne može pretvoriti u grupi.,
Warehouses with existing transaction can not be converted to ledger.,Skladišta sa postojećim transakcija se ne može pretvoriti u knjizi.,
Warning,Upozorenje,
Warning: Another {0} # {1} exists against stock entry {2},Upozorenje: Još {0} {1} # postoji protiv ulaska zaliha {2},
Warning: Invalid SSL certificate on attachment {0},Upozorenje: Invalid SSL certifikat o prilogu {0},
Warning: Invalid attachment {0},Upozorenje: Invalid Prilog {0},
Warning: Material Requested Qty is less than Minimum Order Qty,Upozorenje : Materijal tražena količina manja nego minimalna narudžba kol,
Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Upozorenje: prodajnog naloga {0} već postoji protiv narudžbenice kupca {1},
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Upozorenje : Sustav neće provjeravati overbilling od iznosa za točku {0} u {1} je nula,
Warranty,Garancija,
Warranty Claim,Garantni  rok,
Warranty Claim against Serial No.,Garantni rok protiv Serial No.,
Website,Web stranica,
Website Image should be a public file or website URL,Sajt slika treba da bude javni datoteke ili web stranice URL,
Website Image {0} attached to Item {1} cannot be found,Sajt Slika {0} prilogu Stavka {1} ne može biti pronađena,
Website Manager,Web Manager,
Website Settings,Website Postavke,
Wednesday,Srijeda,
Week,sedmica,
Weekdays,Radnim danima,
Weekly,Tjedni,
"Weight is mentioned,\nPlease mention ""Weight UOM"" too","Težina se spominje, \n Navedite ""Težina UOM"" previše",
Welcome email sent,E-mail dobrodošlice,
Welcome to ERPNext,Dobrodošli na ERPNext,
What do you need help with?,Šta ti je potrebna pomoć?,
What does it do?,Što učiniti ?,
Where manufacturing operations are carried.,Gdje se obavljaju proizvodne operacije.,
White,Bijel,
Wire Transfer,Wire Transfer,
WooCommerce Products,WooCommerce Proizvodi,
Work In Progress,Radovi u toku,
Work Order,Radni nalog,
Work Order already created for all items with BOM,Radni nalog već je kreiran za sve predmete sa BOM,
Work Order cannot be raised against a Item Template,Nalog za rad ne može se pokrenuti protiv šablona za stavke,
Work Order has been {0},Radni nalog je bio {0},
Work Order not created,Radni nalog nije kreiran,
Work Order {0} must be cancelled before cancelling this Sales Order,Radni nalog {0} mora biti otkazan prije otkazivanja ovog prodajnog naloga,
Work Order {0} must be submitted,Radni nalog {0} mora biti dostavljen,
Work Orders Created: {0},Objavljeni radni nalogi: {0},
Work-in-Progress Warehouse is required before Submit,Rad u tijeku Warehouse je potrebno prije Podnijeti,
Workflow,Hodogram,
Working,U toku,
Working Hours,Radno vrijeme,
Workstation,Workstation,
Workstation is closed on the following dates as per Holiday List: {0},Workstation je zatvoren sljedećih datuma po Holiday List: {0},
Wrapping up,Zavijanje,
Wrong Password,Pogrešna lozinka,
Year start date or end date is overlapping with {0}. To avoid please set company,datum početka godine ili datum završetka je preklapaju sa {0}. Da bi se izbjegla molimo vas da postavite kompanija,
You are not authorized to add or update entries before {0},Niste ovlašteni za dodati ili ažurirati unose prije {0},
You are not authorized to set Frozen value,Niste ovlašteni za postavljanje Frozen vrijednost,
You can not change rate if BOM mentioned agianst any item,Ne možete promijeniti brzinu ako BOM spomenuo agianst bilo predmet,
You can not enter current voucher in 'Against Journal Entry' column,Ne možete ući trenutni voucher u 'Protiv Journal Entry' koloni,
You can only have Plans with the same billing cycle in a Subscription,Planove možete imati samo sa istim ciklusom naplate na Pretplati,
You can only redeem max {0} points in this order.,Možete uneti samo max {0} poena u ovom redosledu.,
You can only renew if your membership expires within 30 days,Možete obnoviti samo ako vaše članstvo istekne u roku od 30 dana,
You can only select a maximum of one option from the list of check boxes.,Iz liste polja za potvrdu možete izabrati najviše jedne opcije.,
You can't redeem Loyalty Points having more value than the Grand Total.,Ne možete otkupiti Loyalty Points sa više vrijednosti nego Grand Total.,
You cannot credit and debit same account at the same time,Ne možete kreditnim i debitnim isti račun u isto vrijeme,
You cannot delete Fiscal Year {0}. Fiscal Year {0} is set as default in Global Settings,Ne možete izbrisati fiskalnu godinu {0}. Fiskalna godina {0} je postavljen kao zadani u Globalne postavke,
You cannot delete Project Type 'External',Ne možete obrisati tip projekta &#39;Spoljni&#39;,
You cannot edit root node.,Ne možete uređivati root čvor.,
You cannot restart a Subscription that is not cancelled.,Ne možete ponovo pokrenuti pretplatu koja nije otkazana.,
You don't have enought Loyalty Points to redeem,Ne iskoristite Loyalty Points za otkup,
You have already assessed for the assessment criteria {}.,Ste već ocijenili za kriterije procjene {}.,
You have already selected items from {0} {1},Vi ste već odabrane stavke iz {0} {1},
You have been invited to collaborate on the project: {0},Vi ste pozvani da surađuju na projektu: {0},
You have entered duplicate items. Please rectify and try again.,Unijeli duple stavke . Molimo ispraviti i pokušajte ponovno .,
You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Morate biti korisnik osim administratora sa ulogama upravitelja sistema i menadžera postavki za registraciju na tržištu.,
You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Morate biti korisnik sa ulogama System Manager i Item Manager da biste dodali korisnike u Marketplace.,
You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Potrebno je da budete korisnik sa ulogama System Manager i Item Manager za prijavljivanje na Marketplace.,
You need to be logged in to access this page,Morate biti prijavljeni da pristupite ovoj stranici,
You need to enable Shopping Cart,Trebate omogućiti Košarica,
You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Izgubićete podatke o prethodno generisanim računima. Da li ste sigurni da želite ponovo pokrenuti ovu pretplatu?,
Your Organization,Vaša organizacija,
Your cart is Empty,Vaša košarica je prazna,
Your email address...,Tvoja e-mail adresa...,
Your order is out for delivery!,Vaša narudžba je isporučena!,
Your tickets,Vaše karte,
ZIP Code,Poštanski broj,
[Error],[Greška],
[{0}](#Form/Item/{0}) is out of stock,[{0}] (# obrazac / Stavka / {0}) je out of stock,
`Freeze Stocks Older Than` should be smaller than %d days.,`blokiraj zalihe starije od podrazumijevanog manje od % d dana .,
based_on,based_on,
cannot be greater than 100,ne može biti veća od 100,
disabled user,invaliditetom korisnika,
"e.g. ""Build tools for builders""","na primjer "" Izgraditi alate za graditelje """,
"e.g. ""Primary School"" or ""University""",npr &quot;Osnovna škola&quot; ili &quot;Univerzitet&quot;,
"e.g. Bank, Cash, Credit Card","npr. banka, gotovina, kreditne kartice",
hidden,skriven,
modified,modificirani,
old_parent,old_parent,
on,na,
{0} '{1}' is disabled,{0} '{1}' je onemogućeno,
{0} '{1}' not in Fiscal Year {2},{0} ' {1} ' nije u fiskalnoj godini {2},
{0} ({1}) cannot be greater than planned quantity ({2}) in Work Order {3},{0} ({1}) ne može biti veća od planirane količine ({2}) u radnom nalogu {3},
{0} - {1} is inactive student,{0} - {1} je neaktivan student,
{0} - {1} is not enrolled in the Batch {2},{0} - {1} nije upisana u Batch {2},
{0} - {1} is not enrolled in the Course {2},{0} - {1} nije upisanim na predmetu {2},
{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5},{0} budžeta za računa {1} protiv {2} {3} je {4}. To će premašiti po {5},
{0} Digest,{0} Digest,
{0} Request for {1},{0} Zahtev za {1},
{0} Result submittted,{0} Rezultat je podnet,
{0} Serial Numbers required for Item {1}. You have provided {2}.,{0} serijski brojevi potrebni za artikal {1}. koji ste trazili {2}.,
{0} Student Groups created.,{0} studentskih grupa stvorio.,
{0} Students have been enrolled,{0} Studenti su upisani,
{0} against Bill {1} dated {2},{0} protiv placanje {1}  od {2},
{0} against Purchase Order {1},{0} protiv narudzbine dobavljacu {1},
{0} against Sales Invoice {1},{0} protiv prodaje fakture {1},
{0} against Sales Order {1},{0} protiv naloga prodaje {1},
{0} asset cannot be transferred,{0} imovine ne može se prenositi,
{0} can not be negative,{0} ne može biti negativna,
{0} created,{0} kreirao,
"{0} currently has a {1} Supplier Scorecard standing, and Purchase Orders to this supplier should be issued with caution.","{0} trenutno ima {1} Scorecard stava, a narudžbine za ovaj dobavljač treba izdati oprezno.",
"{0} currently has a {1} Supplier Scorecard standing, and RFQs to this supplier should be issued with caution.",{0} trenutno ima {1} Scorecard stava i RFQs ovog dobavljača treba izdati oprezno.,
{0} does not belong to Company {1},{0} ne pripada preduzecu {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner master,{0} nema raspored zdravstvenih radnika. Dodajte ga u Master Health Practitioner,
{0} entered twice in Item Tax,{0}pritisnite dva puta u sifri poreza,
{0} for {1},{0} {1} za,
{0} has been submitted successfully,{0} je uspešno podnet,
{0} has fee validity till {1},{0} ima važeću tarifu do {1},
{0} hours,{0} sati,
{0} in row {1},{0} u redu {1},
{0} is blocked so this transaction cannot proceed,"{0} je blokiran, tako da se ova transakcija ne može nastaviti",
{0} is mandatory,{0} je obavezno,
{0} is mandatory for Item {1},{0} je obavezno za tu stavku {1},
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} je obavezno. Možda knjigovodstveni zapis nije kreiran za {1} na {2}.,
{0} is not a stock Item,{0} ne postoji na zalihama.,
{0} is not a valid Batch Number for Item {1},{0} nije ispravan broj serije za artikal {1},
{0} is not added in the table,{0} nije dodan u tabeli,
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,{0} je podrazumijevana Fiskalna godina . Osvježite svoj browserda bi se izmjene primijenile.,
{0} is on hold till {1},{0} je na čekanju do {1},
{0} item found.,{0} predmet je pronađen.,
{0} items found.,{0} pronađenih predmeta.,
{0} items in progress,{0} stavke u tijeku,
{0} items produced,{0} artikala proizvedenih,
{0} must appear only once,{0} se mora pojaviti samo jednom,
{0} must be negative in return document,{0} mora biti negativan za uzvrat dokumentu,
{0} not allowed to transact with {1}. Please change the Company.,{0} nije dozvoljeno da radi sa {1}. Zamijenite Kompaniju.,
{0} not found for item {1},{0} nije pronađen za stavku {1},
{0} parameter is invalid,Parametar {0} nije važeći,
{0} payment entries can not be filtered by {1},{0} unosi isplate ne mogu biti filtrirani po {1},
{0} should be a value between 0 and 100,{0} treba da bude vrednost između 0 i 100,
{0} units of [{1}](#Form/Item/{1}) found in [{2}](#Form/Warehouse/{2}),{0} jedinice [{1}] (# obrazac / Stavka / {1}) naći u [{2}] (# obrazac / Skladište / {2}),
{0} units of {1} needed in {2} on {3} {4} for {5} to complete this transaction.,{0} jedinicama {1} potrebno {2} na {3} {4} za {5} da završi ovu transakciju.,
{0} units of {1} needed in {2} to complete this transaction.,{0} jedinicama {1} potrebno {2} za završetak ove transakcije.,
{0} valid serial nos for Item {1},{0} valjani serijski broj za artikal {1},
{0} variants created.,{0} kreirane varijante.,
{0} {1} created,{0} {1} stvorio,
{0} {1} does not exist,{0} {1} ne postoji,
{0} {1} has been modified. Please refresh.,{0} {1} je izmijenjen . Osvježite stranicu.,
{0} {1} has not been submitted so the action cannot be completed,{0} {1} nije dostavljen tako akciju nije moguće dovršiti,
"{0} {1} is associated with {2}, but Party Account is {3}","{0} {1} je povezan sa {2}, ali Party Party je {3}",
{0} {1} is cancelled or closed,{0} {1} je otkazan ili zatvoren,
{0} {1} is cancelled or stopped,{0} {1} je otkazan ili zaustavljen,
{0} {1} is cancelled so the action cannot be completed,{0} {1} je otkazan tako da akcija ne može završiti,
{0} {1} is closed,{0} {1} je zatvoren,
{0} {1} is disabled,{0} {1} je onemogućena,
{0} {1} is frozen,{0} {1} je smrznuto,
{0} {1} is fully billed,{0} {1} je u potpunosti naplaćeno,
{0} {1} is not active,{0} {1} nije aktivan,
{0} {1} is not associated with {2} {3},{0} {1} nije povezan sa {2} {3},
{0} {1} is not present in the parent company,{0} {1} nije prisutan u matičnoj kompaniji,
{0} {1} is not submitted,{0} {1} nije proslijedjen,
{0} {1} is {2},{0} {1} je {2},
{0} {1} must be submitted,{0} {1} mora biti podnesen,
{0} {1} not in any active Fiscal Year.,{0} {1} ne u bilo kojem aktivnom fiskalne godine.,
{0} {1} status is {2},{0} {1} {2} status,
{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,{0} {1}: &#39;dobiti i gubitka&#39; tip naloga {2} nije dozvoljeno otvaranje Entry,
{0} {1}: Account {2} does not belong to Company {3},{0} {1}: Račun {2} ne pripada kompaniji {3},
{0} {1}: Account {2} is inactive,{0} {1}: Račun {2} je neaktivan,
{0} {1}: Accounting Entry for {2} can only be made in currency: {3},{0} {1}: Računovodstvo Ulaz za {2} može se vršiti samo u valuti: {3},
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: trošak je obvezan za artikal {2},
{0} {1}: Cost Center is required for 'Profit and Loss' account {2}. Please set up a default Cost Center for the Company.,{0} {1}: Troškovi Centar je potreban za &quot;dobiti i gubitka računa {2}. Molimo vas da se uspostavi default troškova Centra za kompanije.,
{0} {1}: Cost Center {2} does not belong to Company {3},{0} {1}: Cost Center {2} ne pripada kompaniji {3},
{0} {1}: Customer is required against Receivable account {2},{0} {1}: gost je dužan protiv potraživanja nalog {2},
{0} {1}: Either debit or credit amount is required for {2},{0} {1}: Ili debitne ili kreditne iznos je potreban za {2},
{0} {1}: Supplier is required against Payable account {2},{0} {1}: dobavljača se protiv plaćaju račun {2},
{0}% Billed,{0}% Fakturisana,
{0}% Delivered,{0}% Isporučeno,
{0}: From {1},{0}: {1} Od,
{0}: {1} does not exists,{0}: {1} ne postoji,
{0}: {1} not found in Invoice Details table,{0}: {1} nije pronađen u tabeli details na fakturi,
{} of {},{} od {},
Assigned To,Dodijeljeno,
Chat,Chat,
Completed By,Završio,
County,okrug,
Day of Week,Dan Tjedan,
"Dear System Manager,","Dragi System Manager,",
Default Value,Zadana vrijednost,
Email Group,E-mail Group,
Email Settings,Postavke e-pošte,
Email not sent to {0} (unsubscribed / disabled),E-mail ne šalju {0} (odjavljeni / invaliditetom),
Error Message,Poruka o grešci,
Fieldtype,Polja,
Help Articles,Članci pomoći,
ID,ID,
Images,Slike,
Import,Uvoz,
Language,Jezik,
Likes,Like,
Merge with existing,Merge sa postojećim,
Office,Ured,
Orientation,orijentacija,
Parent,Roditelj,
Passive,Pasiva,
Payment Failed,plaćanje nije uspjelo,
Permanent,trajan,
Personal,Osobno,
Plant,Biljka,
Post,Pošalji,
Postal,Poštanski,
Postal Code,poštanski broj,
Previous,prijašnji,
Provider,Provajder,
Read Only,Read Only,
Recipient,Primalac,
Reviews,Recenzije,
Sender,Pošiljaoc,
Shop,Prodavnica,
Subsidiary,Podružnica,
There is some problem with the file url: {0},Postoji neki problem sa URL datoteku: {0},
There were errors while sending email. Please try again.,Bilo je grešaka tijekom slanja e-pošte. Molimo pokušajte ponovno .,
Values Changed,Promena vrednosti,
or,ili,
Ageing Range 4,Raspon starenja 4,
Allocated amount cannot be greater than unadjusted amount,Dodijeljeni iznos ne može biti veći od neprilagođenog iznosa,
Allocated amount cannot be negative,Dodijeljeni iznos ne može biti negativan,
"Difference Account must be a Asset/Liability type account, since this Stock Entry is an Opening Entry","Račun razlike mora biti račun vrste imovine / odgovornosti, jer je ovaj unos dionica otvaranje",
Import Successful,Uvoz je uspešan,
Please save first,Prvo sačuvajte,
Price not found for item {0} in price list {1},Cijena nije pronađena za artikl {0} u cjeniku {1},
Warehouse Type,Tip skladišta,
'Date' is required,Obavezan je datum,
Budgets,Budžeti,
Bundle Qty,Količina paketa,
Company GSTIN,Kompanija GSTIN,
Company field is required,Polje kompanije je obavezno,
Creating Dimensions...,Stvaranje dimenzija ...,
Duplicate entry against the item code {0} and manufacturer {1},Duplikat unosa sa šifrom artikla {0} i proizvođačem {1},
Invalid GSTIN! The input you've entered doesn't match the GSTIN format for UIN Holders or Non-Resident OIDAR Service Providers,Nevažeći GSTIN! Uneseni unos ne odgovara formatu GSTIN za vlasnike UIN-a ili nerezidentne dobavljače usluga OIDAR,
Invoice Grand Total,Faktura Grand Total,
Last carbon check date cannot be a future date,Posljednji datum provjere ugljika ne može biti budući datum,
Make Stock Entry,Unesite zalihe,
Quality Feedback,Kvalitetne povratne informacije,
Quality Feedback Template,Predložak kvalitetne povratne informacije,
Rules for applying different promotional schemes.,Pravila za primjenu različitih promotivnih shema.,
Show {0},Prikaži {0},
"Special Characters except '-', '#', '.', '/', '{{' and '}}' not allowed in naming series {0}","Posebni znakovi osim &quot;-&quot;, &quot;#&quot;, &quot;.&quot;, &quot;/&quot;, &quot;{{&quot; I &quot;}}&quot; nisu dozvoljeni u imenovanju serija {0}",
Target Details,Detalji cilja,
{0} already has a Parent Procedure {1}.,{0} već ima roditeljsku proceduru {1}.,
API,API,
Annual,godišnji,
Change,Promjena,
Contact Email,Kontakt email,
Export Type,Tip izvoza,
From Date,Od datuma,
Group By,Group By,
Invalid URL,Nevažeća URL adresa,
Landscape,Pejzaž,
Last Sync On,Poslednja sinhronizacija uključena,
Naming Series,Imenovanje serije,
No data to export,Nema podataka za izvoz,
Portrait,Portret,
Print Heading,Ispis Naslov,
Scheduler Inactive,Planer neaktivan,
Scheduler is inactive. Cannot import data.,Planer je neaktivan. Nije moguće uvesti podatke.,
Show Document,Prikaži dokument,
Show Traceback,Prikaži Traceback,
Video,Video,
Webhook Secret,Webhook Secret,
% Of Grand Total,% Od ukupnog iznosa,
<b>Company</b> is a mandatory filter.,<b>Kompanija</b> je obavezan filter.,
<b>From Date</b> is a mandatory filter.,<b>From Date</b> je obavezan filtar.,
<b>From Time</b> cannot be later than <b>To Time</b> for {0},<b>Od vremena</b> ne može biti kasnije od <b>Toca</b> za {0},
<b>To Date</b> is a mandatory filter.,<b>Do danas</b> je obavezan filter.,
A new appointment has been created for you with {0},Za vas je stvoren novi sastanak sa {0},
Account Value,Vrijednost računa,
Account is mandatory to get payment entries,Račun je obavezan za unos plaćanja,
Account is not set for the dashboard chart {0},Za grafikon nadzorne ploče nije postavljen račun {0},
Account {0} does not exists in the dashboard chart {1},Račun {0} ne postoji u grafikonu nadzorne ploče {1},
Account: <b>{0}</b> is capital Work in progress and can not be updated by Journal Entry,Račun: <b>{0}</b> je kapital Ne radi se i ne može se ažurirati unos u časopisu,
Account: {0} is not permitted under Payment Entry,Račun: {0} nije dozvoljen unosom plaćanja,
Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.,Za račun &quot;Bilans stanja&quot; {1} potrebna je knjigovodstvena dimenzija <b>{0</b> }.,
Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,Za račun „Dobit i gubitak“ {1} potrebna je računovodstvena dimenzija <b>{0</b> }.,
Accounting Masters,Majstori računovodstva,
Accounting Period overlaps with {0},Računovodstveno razdoblje se preklapa sa {0},
Activity,Aktivnost,
Add / Manage Email Accounts.,Dodaj / Upravljanje Email Accounts.,
Add Child,Dodaj podređenu stavku,
Add Multiple,dodavanje više,
Add Participants,Dodajte Učesnike,
Add to Featured Item,Dodaj u istaknuti artikl,
Add your review,Dodajte svoju recenziju,
Add/Edit Coupon Conditions,Dodavanje / uređivanje uvjeta kupona,
Added to Featured Items,Dodano u istaknute predmete,
Added {0} ({1}),Dodano {0} ({1}),
Address Line 1,Adresa - linija 1,
Addresses,Adrese,
Admission End Date should be greater than Admission Start Date.,Datum završetka prijema trebao bi biti veći od datuma početka upisa.,
All,Sve,
All bank transactions have been created,Sve bankarske transakcije su stvorene,
All the depreciations has been booked,Sve amortizacije su knjižene,
Allow Resetting Service Level Agreement from Support Settings.,Dopustite resetiranje sporazuma o nivou usluge iz postavki podrške.,
Amount of {0} is required for Loan closure,Za zatvaranje zajma potreban je iznos {0},
Applied Coupon Code,Primenjeni kod kupona,
Apply Coupon Code,Primijenite kupon kod,
Appointment Booking,Rezervacija termina,
"As there are existing transactions against item {0}, you can not change the value of {1}","Kao što je već postoje transakcije protiv stavku {0}, ne možete promijeniti vrijednost {1}",
Asset Id,Id sredstva,
Asset Value,Vrijednost imovine,
Asset Value Adjustment cannot be posted before Asset's purchase date <b>{0}</b>.,Podešavanje vrednosti imovine ne može se objaviti pre datuma kupovine imovine <b>{0}</b> .,
Asset {0} does not belongs to the custodian {1},Imovina {0} ne pripada staratelju {1},
Asset {0} does not belongs to the location {1},Imovina {0} ne pripada lokaciji {1},
At least one of the Applicable Modules should be selected,Treba odabrati barem jedan od primjenjivih modula,
Atleast one asset has to be selected.,Treba odabrati najmanje jedno sredstvo.,
Authentication Failed,Autentifikacija nije uspjela,
Automatic Reconciliation,Automatsko pomirenje,
Available For Use Date,Datum upotrebe,
Available Stock,Dostupne zalihe,
"Available quantity is {0}, you need {1}","Dostupna količina je {0}, treba vam {1}",
BOM 1,BOM 1,
BOM 2,BOM 2,
BOM Comparison Tool,Alat za upoređivanje BOM-a,
BOM recursion: {0} cannot be child of {1},BOM rekurzija: {0} ne može biti dijete od {1},
BOM recursion: {0} cannot be parent or child of {1},BOM rekurzija: {0} ne može biti roditelj ili dijete od {1},
Back to Home,Povratak na početnu,
Back to Messages,Nazad na poruke,
Bank Data mapper doesn't exist,Map Data Mapper ne postoji,
Bank Details,Bankovni detalji,
Bank account '{0}' has been synchronized,Bankovni račun &#39;{0}&#39; je sinhronizovan,
Bank account {0} already exists and could not be created again,Bankovni račun {0} već postoji i ne može se ponovo otvoriti,
Bank accounts added,Dodani su bankovni računi,
Batch no is required for batched item {0},Za serijski artikal nije potreban serijski broj {0},
Billing Date,Datum obračuna,
Billing Interval Count cannot be less than 1,Interni broj naplate ne može biti manji od 1,
Blue,Plava boja,
Book,Knjiga,
Book Appointment,Sastanak knjige,
Brand,Brend,
Browse,Izaberi,
Call Connected,Poziv je povezan,
Call Disconnected,Poziv prekinuti,
Call Missed,Poziv propušten,
Call Summary,Rezime poziva,
Call Summary Saved,Sažetak poziva je spremljen,
Cancelled,Otkazano,
Cannot Calculate Arrival Time as Driver Address is Missing.,Ne mogu izračunati vrijeme dolaska jer nedostaje adresa vozača.,
Cannot Optimize Route as Driver Address is Missing.,Ruta ne može da se optimizira jer nedostaje adresa vozača.,
Cannot complete task {0} as its dependant task {1} are not ccompleted / cancelled.,Ne mogu dovršiti zadatak {0} jer njegov ovisni zadatak {1} nije dovršen / otkazan.,
Cannot find a matching Item. Please select some other value for {0}.,Ne možete pronaći stavku koja se podudara. Molimo odaberite neki drugi vrijednost za {0}.,
"Cannot overbill for Item {0} in row {1} more than {2}. To allow over-billing, please set allowance in Accounts Settings","Ne mogu se preplatiti za stavku {0} u redu {1} više od {2}. Da biste omogućili prekomerno naplaćivanje, molimo postavite dodatak u Postavkama računa",
"Capacity Planning Error, planned start time can not be same as end time","Pogreška planiranja kapaciteta, planirano vrijeme početka ne može biti isto koliko i vrijeme završetka",
Categories,Kategorije,
Changes in {0},Promjene u {0},
Chart,Grafikon,
Choose a corresponding payment,Odaberite odgovarajuću uplatu,
Click on the link below to verify your email and confirm the appointment,Kliknite na donju vezu kako biste potvrdili svoju e-poštu i potvrdili sastanak,
Close,Zatvoriti,
Communication,Komunikacija,
Compact Item Print,Compact Stavka Print,
Company,Preduzeće,
Company of asset {0} and purchase document {1} doesn't matches.,Kompanija imovine {0} i dokument o kupovini {1} ne odgovaraju.,
Compare BOMs for changes in Raw Materials and Operations,Uporedite BOM za promjene u sirovinama i načinu rada,
Compare List function takes on list arguments,Funkcija Uporedi listu preuzima argumente liste,
Complete,Kompletan,
Completed,Dovršen,
Completed Quantity,Popunjena količina,
Connect your Exotel Account to ERPNext and track call logs,Povežite svoj Exotel račun u ERPNext i pratite zapise poziva,
Connect your bank accounts to ERPNext,Povežite svoje bankovne račune s ERPNext-om,
Contact Seller,Kontakt oglašivača,
Continue,Nastaviti,
Cost Center: {0} does not exist,Centar troškova: {0} ne postoji,
Couldn't Set Service Level Agreement {0}.,Nije moguće podesiti ugovor o nivou usluge {0}.,
Country,Zemlja,
Country Code in File does not match with country code set up in the system,Kôd države u datoteci ne podudara se sa kodom države postavljenim u sistemu,
Create New Contact,Kreirajte novi kontakt,
Create New Lead,Stvorite novi potencijal,
Create Pick List,Napravite listu odabira,
Create Quality Inspection for Item {0},Napravite inspekciju kvaliteta za predmet {0},
Creating Accounts...,Stvaranje računa ...,
Creating bank entries...,Stvaranje bankovnih unosa ...,
Credit limit is already defined for the Company {0},Kreditni limit je već definisan za Kompaniju {0},
Ctrl + Enter to submit,Ctrl + Enter da biste poslali,
Ctrl+Enter to submit,Ctrl + Enter za slanje,
Currency,Valuta,
Current Status,Trenutni status,
Customer PO,Potrošački PO,
Customize,Prilagodite,
Daily,Svakodnevno,
Date,Datum,
Date of Birth cannot be greater than Joining Date.,Datum rođenja ne može biti veći od datuma pridruživanja.,
Dear,Poštovani,
Default,Podrazumjevano,
Define coupon codes.,Definirajte kodove kupona.,
Delayed Days,Odloženi dani,
Delete,Izbrisati,
Delivered Quantity,Isporučena količina,
Delivery Notes,Napomene o isporuci,
Depreciated Amount,Amortizovani iznos,
Description,Opis,
Designation,Oznaka,
Difference Value,Vrijednost razlike,
Dimension Filter,Dimenzijski filter,
Disabled,Ugašeno,
Disbursement and Repayment,Isplata i otplata,
Distance cannot be greater than 4000 kms,Udaljenost ne može biti veća od 4000 km,
Do you want to submit the material request,Želite li poslati materijalni zahtjev,
Doctype,Vrsta dokumenta,
Document {0} successfully uncleared,Dokument {0} uspješno nije izbrisan,
Download Template,Preuzmite predložak,
Dr,Doktor,
Due Date,Datum dospijeća,
Duplicate,Duplikat,
Duplicate Project with Tasks,Duplikat projekta sa zadacima,
Duplicate project has been created,Izrađen je duplikat projekta,
E-Way Bill JSON can only be generated from a submitted document,e-Way Bill JSON može se generirati samo iz poslanog dokumenta,
E-Way Bill JSON can only be generated from submitted document,e-Way Bill JSON može se generirati samo iz dostavljenog dokumenta,
E-Way Bill JSON cannot be generated for Sales Return as of now,E-Way Bill JSON od sada se ne može generirati za povrat prodaje,
ERPNext could not find any matching payment entry,ERPNext nije mogao pronaći nijedan odgovarajući unos za plaćanje,
Earliest Age,Najranije doba,
Edit Details,Uredite detalje,
Edit Profile,Uredi profil,
Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Ako je način prevoza cestovni, nije potreban ili GST Transporter ID ili vozilo",
Email,Email,
Email Campaigns,Kampanja e-pošte,
Employee ID is linked with another instructor,ID zaposlenika povezan je s drugim instruktorom,
Employee Tax and Benefits,Porez i beneficije zaposlenih,
Employee is required while issuing Asset {0},Zaposlenik je potreban dok izdaje imovinu {0},
Employee {0} does not belongs to the company {1},Zaposleni {0} ne pripada kompaniji {1},
Enable Auto Re-Order,Omogući automatsku ponovnu narudžbu,
End Date of Agreement can't be less than today.,Datum završetka sporazuma ne može biti manji od današnjeg.,
End Time,End Time,
Energy Point Leaderboard,Energy Point Leaderboard,
Enter API key in Google Settings.,Unesite ključ API-a u Google postavke.,
Enter Supplier,Unesite dobavljača,
Enter Value,Unesite vrijednost,
Entity Type,Tip entiteta,
Error,Pogreška,
Error in Exotel incoming call,Pogreška u dolaznom pozivu Exotela,
Error: {0} is mandatory field,Greška: {0} je obavezno polje,
Exception occurred while reconciling {0},Izuzetak je nastao prilikom usklađivanja {0},
Expected and Discharge dates cannot be less than Admission Schedule date,Očekivani i datum otpuštanja ne može biti manji od datuma Plana prijema,
Expired,Istekla,
Export,Izvoz,
Export not allowed. You need {0} role to export.,Izvoz nisu dopušteni . Trebate {0} ulogu za izvoz .,
Failed to add Domain,Nije moguće dodati Domen,
Fetch Items from Warehouse,Dohvaćanje predmeta iz skladišta,
Fetching...,Dohvaćanje ...,
Field,polje,
File Manager,File Manager,
Filters,Filteri,
Finding linked payments,Pronalaženje povezanih plaćanja,
Fleet Management,Fleet Management,
Following fields are mandatory to create address:,Sledeća polja su obavezna za kreiranje adrese:,
For Month,Za mesec,
"For item {0} at row {1}, count of serial numbers does not match with the picked quantity","Za stavku {0} u redu {1}, broj serijskih brojeva ne odgovara izabranoj količini",
For operation {0}: Quantity ({1}) can not be greter than pending quantity({2}),Za rad {0}: Količina ({1}) ne može biti veća od količine na čekanju ({2}),
For quantity {0} should not be greater than work order quantity {1},Za količinu {0} ne smije biti veća od količine radnog naloga {1},
Free item not set in the pricing rule {0},Besplatni artikal nije postavljen u pravilu o cijenama {0},
From Date and To Date are Mandatory,Datum i datum su obavezni,
From employee is required while receiving Asset {0} to a target location,Od zaposlenika je potrebno za vrijeme prijema imovine {0} do ciljane lokacije,
Future Payment Amount,Budući iznos plaćanja,
Future Payment Ref,Buduće plaćanje Ref,
Future Payments,Buduće isplate,
GST HSN Code does not exist for one or more items,GST HSN kod ne postoji za jednu ili više stavki,
Generate E-Way Bill JSON,Stvorite e-Way Bill JSON,
Get Items,Kreiraj proizvode,
Get Outstanding Documents,Nabavite izvanredne dokumente,
Goal,Cilj,
Greater Than Amount,Veća od iznosa,
Green,Zelenilo,
Group,Grupa,
Group By Customer,Grupiranje prema kupcu,
Group By Supplier,Grupiranje po dobavljaču,
Group Node,Group Node,
Group Warehouses cannot be used in transactions. Please change the value of {0},Grupne skladišta se ne mogu koristiti u transakcijama. Molimo promijenite vrijednost {0},
Help,Pomoć,
Help Article,Pomoć član,
"Helps you keep tracks of Contracts based on Supplier, Customer and Employee","Pomaže vam da pratite ugovore na osnovu dobavljača, kupca i zaposlenika",
Helps you manage appointments with your leads,Pomaže vam u upravljanju sastancima sa potencijalnim klijentima,
Home,dom,
IBAN is not valid,IBAN nije valjan,
Import Data from CSV / Excel files.,Uvoz podataka iz datoteka CSV / Excel.,
In Progress,U toku,
Incoming call from {0},Dolazni poziv od {0},
Incorrect Warehouse,Pogrešno skladište,
Invalid Barcode. There is no Item attached to this barcode.,Nevažeći barkod. Nijedna stavka nije priložena ovom barkodu.,
Invalid credentials,Nevažeće vjerodajnice,
Invite as User,Pozovi kao korisnika,
Issue Priority.,Prioritet pitanja.,
Issue Type.,Vrsta izdanja,
"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.","Čini se da postoji problem sa konfiguracijom trake servera. U slučaju neuspeha, iznos će biti vraćen na vaš račun.",
Item Reported,Stavka prijavljena,
Item listing removed,Popis predmeta je uklonjen,
Item quantity can not be zero,Količina predmeta ne može biti jednaka nuli,
Item taxes updated,Ažurirani su porezi na artikle,
Item {0}: {1} qty produced. ,Stavka {0}: {1} proizvedeno.,
Joining Date can not be greater than Leaving Date,Datum pridruživanja ne može biti veći od Datum napuštanja,
Lab Test Item {0} already exist,Predmet laboratorijskog testa {0} već postoji,
Last Issue,Poslednje izdanje,
Latest Age,Najnovije doba,
Leaves Taken,Ostavljeni listovi,
Less Than Amount,Manje od iznosa,
Liabilities,Obaveze,
Loading...,Učitavanje ...,
Loan Applications from customers and employees.,Prijave za zajmove od kupaca i zaposlenih.,
Loan Processes,Procesi zajma,
Loan Type for interest and penalty rates,Vrsta kredita za kamate i zatezne stope,
Loans,Krediti,
Loans provided to customers and employees.,Krediti kupcima i zaposlenima.,
Location,Lokacija,
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Izgleda kao da je neko poslao na nepotpune URL. Zamolite ih da pogleda u nju.,
Make Journal Entry,Make Journal Entry,
Make Purchase Invoice,Napravite kupnje proizvoda,
Manufactured,Proizvedeno,
Mark Work From Home,Označi rad od kuće,
Master,Majstor,
Max strength cannot be less than zero.,Maksimalna snaga ne može biti manja od nule.,
Maximum attempts for this quiz reached!,Došli su maksimalni pokušaji ovog kviza!,
Message,Poruka,
Missing Values Required,Nedostaje vrijednosti potrebne,
Mobile No,Br. mobilnog telefona,
Mobile Number,Broj mobitela,
Month,Mjesec,
Name,Ime,
Near you,U vašoj blizini,
Net Profit/Loss,Neto dobit / gubitak,
New Expense,Novi trošak,
New Invoice,Nova faktura,
New Payment,Nova uplata,
New release date should be in the future,Novi datum izlaska trebao bi biti u budućnosti,
Newsletter,Newsletter,
No Account matched these filters: {},Nijedan račun ne odgovara ovim filterima: {},
No communication found.,Nije pronađena komunikacija.,
No correct answer is set for {0},Nije postavljen tačan odgovor za {0},
No description,Bez opisa,
No issue has been raised by the caller.,Pozivatelj nije pokrenuo nijedan problem.,
No items to publish,Nema predmeta za objavljivanje,
No outstanding invoices found,Nisu pronađeni neizmireni računi,
No outstanding invoices found for the {0} {1} which qualify the filters you have specified.,Nisu pronađene neizmirene fakture za {0} {1} koji kvalificiraju filtere koje ste naveli.,
No outstanding invoices require exchange rate revaluation,Nijedna nepodmirena faktura ne zahtijeva revalorizaciju tečaja,
No reviews yet,Još nema recenzija,
No views yet,Još uvijek nema pogleda,
Non stock items,Artikli koji nisu dostupni,
Not Allowed,Nije dozvoljen,
Not allowed to create accounting dimension for {0},Nije dozvoljeno stvaranje dimenzije računovodstva za {0},
Not permitted. Please disable the Lab Test Template,Nije dozvoljeno. Isključite predložak laboratorijskog testa,
Note,Biljeske,
Notes: ,Bilješke :,
On Converting Opportunity,O pretvaranju mogućnosti,
On Purchase Order Submission,Prilikom narudžbe,
On Sales Order Submission,O podnošenju prodajnih naloga,
On Task Completion,Po završetku zadatka,
On {0} Creation,Na {0} Stvaranje,
Only .csv and .xlsx files are supported currently,Trenutno su podržane samo .csv i .xlsx datoteke,
Open,Otvoreno,
Open Contact,Otvori kontakt,
Open Lead,Otvoreno olovo,
Opening and Closing,Otvaranje i zatvaranje,
Operating Cost as per Work Order / BOM,Operativni trošak po radnom nalogu / BOM,
Order Amount,Iznos narudžbe,
Page {0} of {1},Strana {0} od {1},
Paid amount cannot be less than {0},Plaćeni iznos ne može biti manji od {0},
Parent Company must be a group company,Matična kompanija mora biti kompanija u grupi,
Passing Score value should be between 0 and 100,Vrijednost prolaska rezultata trebala bi biti između 0 i 100,
Patient History,Istorija pacijenata,
Pause,pause,
Pay,Platiti,
Payment Document Type,Vrsta dokumenta plaćanja,
Payment Name,Naziv plaćanja,
Pending,Čekanje,
Performance,Performanse,
Period based On,Period zasnovan na,
Perpetual inventory required for the company {0} to view this report.,Trajni inventar potreban je kompaniji {0} za pregled ovog izvještaja.,
Phone,Telefon,
Pick List,Popis liste,
Plaid authentication error,Greška provjere autentičnosti,
Plaid public token error,Greška u javnom tokenu,
Plaid transactions sync error,Greška sinhronizacije transakcija u plaidu,
Please check the error log for details about the import errors,Molimo provjerite dnevnik grešaka za detalje o uvoznim greškama,
Please create <b>DATEV Settings</b> for Company <b>{}</b>.,Molimo kreirajte <b>DATEV postavke</b> za kompaniju <b>{}</b> .,
Please create adjustment Journal Entry for amount {0} ,Molimo izradite podešavanje unosa u časopisu za iznos {0},
Please do not create more than 500 items at a time,Molimo ne stvarajte više od 500 predmeta odjednom,
Please enter <b>Difference Account</b> or set default <b>Stock Adjustment Account</b> for company {0},Unesite <b>račun razlike</b> ili postavite zadani <b>račun</b> za <b>prilagodbu dionica</b> za kompaniju {0},
Please enter GSTIN and state for the Company Address {0},Unesite GSTIN i upišite adresu kompanije {0},
Please enter Item Code to get item taxes,Unesite šifru predmeta da biste dobili porez na artikl,
Please enter Warehouse and Date,Unesite skladište i datum,
Please login as a Marketplace User to edit this item.,Prijavite se kao Korisnik Marketplace-a da biste uredili ovu stavku.,
Please login as a Marketplace User to report this item.,Prijavite se kao korisnik Marketplacea kako biste prijavili ovu stavku.,
Please select <b>Template Type</b> to download template,Molimo odaberite <b>Vrsta predloška</b> za preuzimanje predloška,
Please select Customer first,Prvo odaberite kupca,
Please select Item Code first,Prvo odaberite šifru predmeta,
Please select a Delivery Note,Odaberite bilješku o dostavi,
Please select a Sales Person for item: {0},Izaberite prodajnu osobu za predmet: {0},
Please select another payment method. Stripe does not support transactions in currency '{0}',Odaberite drugi način plaćanja. Pruga ne podržava transakcije u valuti &#39;{0}&#39;,
Please select the customer.,Molimo odaberite kupca.,
Please set a Supplier against the Items to be considered in the Purchase Order.,Molimo postavite dobavljača protiv predmeta koji će se smatrati narudžbenicom.,
Please set account heads in GST Settings for Compnay {0},Postavite glave računa u GST Settings za preduzeće {0},
Please set an email id for the Lead {0},Molimo postavite ID e-pošte za Lead {0},
Please set default UOM in Stock Settings,Molimo postavite zadani UOM u Postavkama dionica,
Please set filter based on Item or Warehouse due to a large amount of entries.,Molimo postavite filtar na osnovu predmeta ili skladišta zbog velike količine unosa.,
Please set up the Campaign Schedule in the Campaign {0},Molimo postavite Raspored kampanje u kampanji {0},
Please set valid GSTIN No. in Company Address for company {0},Molimo vas da podesite važeći GSTIN broj na adresi kompanije {0},
Please set {0},Molimo postavite {0},customer
Please setup a default bank account for company {0},Postavite zadani bankovni račun za kompaniju {0},
Please specify,Navedite,
Please specify a {0},Navedite {0},lead
Printing,Štampanje,
Priority,Prioritet,
Priority has been changed to {0}.,Prioritet je promijenjen u {0}.,
Priority {0} has been repeated.,Prioritet {0} je ponovljen.,
Processing XML Files,Obrada XML datoteka,
Profitability,Profitabilnost,
Project,Projekat,
Provide the academic year and set the starting and ending date.,Navedite akademsku godinu i postavite datum početka i završetka.,
Public token is missing for this bank,Javni token nedostaje za ovu banku,
Publish,Objavite,
Publish 1 Item,Objavite 1 predmet,
Publish Items,Objavite stavke,
Publish More Items,Objavite još predmeta,
Publish Your First Items,Objavite svoje prve stavke,
Publish {0} Items,Objavite {0} stavke,
Published Items,Objavljeni predmeti,
Purchase Invoice cannot be made against an existing asset {0},Račun za kupovinu ne može se izvršiti protiv postojećeg sredstva {0},
Purchase Invoices,Računi za kupovinu,
Purchase Orders,Narudžbenice,
Purchase Receipt doesn't have any Item for which Retain Sample is enabled.,Kupoprodajna potvrda nema stavku za koju je omogućen zadržati uzorak.,
Purchase Return,Kupnja Povratak,
Qty of Finished Goods Item,Količina proizvoda gotove robe,
Quality Inspection required for Item {0} to submit,Inspekcija kvaliteta potrebna za podnošenje predmeta {0},
Quantity to Manufacture,Količina za proizvodnju,
Quantity to Manufacture can not be zero for the operation {0},Količina za proizvodnju ne može biti nula za operaciju {0},
Quarterly,Kvartalno,
Queued,Na čekanju,
Quick Entry,Brzo uvođenje,
Quiz {0} does not exist,Kviz {0} ne postoji,
Quotation Amount,Iznos kotacije,
Rate or Discount is required for the price discount.,Za popust na cijenu potreban je popust ili popust.,
Reason,Razlog,
Reconcile Entries,Usklađivanje unosa,
Reconcile this account,Uskladi ovaj račun,
Reconciled,Pomirjen,
Recruitment,regrutacija,
Red,Crven,
Refreshing,Osvežavajuće,
Release date must be in the future,Datum izlaska mora biti u budućnosti,
Relieving Date must be greater than or equal to Date of Joining,Datum oslobađanja mora biti veći ili jednak datumu pridruživanja,
Rename,preimenovati,
Rename Not Allowed,Preimenovanje nije dozvoljeno,
Report Item,Izvještaj,
Report this Item,Prijavi ovu stavku,
Reserved Qty for Subcontract: Raw materials quantity to make subcontracted items.,Količina rezervisanog za podugovor: Količina sirovina za izradu predmeta koji su predmet podugovora.,
Reset,resetovanje,
Reset Service Level Agreement,Vratite ugovor o nivou usluge,
Resetting Service Level Agreement.,Poništavanje ugovora o nivou usluge.,
Return amount cannot be greater unclaimed amount,Povratni iznos ne može biti veći nenaplaćeni iznos,
Review,Pregled,
Room,soba,
Room Type,Tip sobe,
Row # ,Row #,
Row #{0}: Accepted Warehouse and Supplier Warehouse cannot be same,Red # {0}: Prihvaćena skladišta i skladišta dobavljača ne mogu biti isti,
Row #{0}: Cannot delete item {1} which has already been billed.,Redak broj {0}: Nije moguće izbrisati stavku {1} koja je već naplaćena.,
Row #{0}: Cannot delete item {1} which has already been delivered,Redak broj {0}: Ne može se izbrisati stavka {1} koja je već isporučena,
Row #{0}: Cannot delete item {1} which has already been received,Redak broj {0}: Ne može se izbrisati stavka {1} koja je već primljena,
Row #{0}: Cannot delete item {1} which has work order assigned to it.,Redak broj {0}: Ne može se izbrisati stavka {1} kojoj je dodijeljen radni nalog.,
Row #{0}: Cannot delete item {1} which is assigned to customer's purchase order.,Redak broj {0}: Ne može se izbrisati stavka {1} koja je dodijeljena kupčevom nalogu za kupovinu.,
Row #{0}: Cannot select Supplier Warehouse while suppling raw materials to subcontractor,Red broj {0}: Nije moguće odabrati skladište dobavljača dok dobavlja sirovine podizvođaču,
Row #{0}: Cost Center {1} does not belong to company {2},Redak # {0}: Troškovi {1} ne pripada kompaniji {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}.,Red # {0}: Operacija {1} nije dovršena za {2} broj gotovih proizvoda u radnom nalogu {3}. Ažurirajte status rada putem Job Card {4}.,
Row #{0}: Payment document is required to complete the transaction,Redak broj {0}: Za završetak transakcije potreban je dokument o plaćanju,
Row #{0}: Serial No {1} does not belong to Batch {2},Red # {0}: Serijski br. {1} ne pripada grupi {2},
Row #{0}: Service End Date cannot be before Invoice Posting Date,Redak broj {0}: Datum završetka usluge ne može biti prije datuma knjiženja fakture,
Row #{0}: Service Start Date cannot be greater than Service End Date,Redak broj {0}: Datum početka usluge ne može biti veći od datuma završetka usluge,
Row #{0}: Service Start and End Date is required for deferred accounting,Redak broj {0}: Datum početka i završetka usluge potreban je za odgođeni računovodstvo,
Row {0}: Invalid Item Tax Template for item {1},Red {0}: Nevažeći predložak poreza na stavku {1},
Row {0}: Quantity not available for {4} in warehouse {1} at posting time of the entry ({2} {3}),Red {0}: Količina nije dostupna za {4} u skladištu {1} u vrijeme knjiženja unosa ({2} {3}),
Row {0}: user has not applied the rule {1} on the item {2},Red {0}: korisnik nije primijenio pravilo {1} na stavku {2},
Row {0}:Sibling Date of Birth cannot be greater than today.,Red {0}: Datum rođenja braće ne može biti veći od današnjeg.,
Row({0}): {1} is already discounted in {2},Red ({0}): {1} već je diskontiran u {2},
Rows Added in {0},Redovi dodani u {0},
Rows Removed in {0},Redovi su uklonjeni za {0},
Save,Snimi,
Save Item,Spremi stavku,
Saved Items,Spremljene stavke,
Search Items ...,Stavke za pretraživanje ...,
Search for a payment,Potražite plaćanje,
Search for anything ...,Traži bilo šta ...,
Search results for,Rezultati pretrage za,
Select All,Odaberite sve,
Select Difference Account,Odaberite račun razlike,
Select a Default Priority.,Odaberite zadani prioritet.,
Select a company,Odaberite kompaniju,
Select finance book for the item {0} at row {1},Odaberite knjigu finansiranja za stavku {0} u retku {1},
Select only one Priority as Default.,Odaberite samo jedan prioritet kao podrazumevani.,
Seller Information,Informacije o prodavaču,
Send,Poslati,
Send a message,Pošaljite poruku,
Sending,Slanje,
Sends Mails to lead or contact based on a Campaign schedule,Šalje poruke kako bi vodio ili kontaktirao na osnovu rasporeda kampanje,
Serial Number Created,Serijski broj je kreiran,
Serial Numbers Created,Serijski brojevi stvoreni,
Serial no(s) required for serialized item {0},Serijski br. Nisu potrebni za serijski broj {0},
Series,Serija,
Server Error,greska servera,
Service Level Agreement has been changed to {0}.,Ugovor o nivou usluge izmenjen je u {0}.,
Service Level Agreement was reset.,Ugovor o nivou usluge je resetiran.,
Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Ugovor o nivou usluge sa tipom entiteta {0} i entitetom {1} već postoji.,
Set,Set,
Set Meta Tags,Postavljanje meta tagova,
Set {0} in company {1},Set {0} u kompaniji {1},
Setup,Podešavanje,
Setup Wizard,Čarobnjak za postavljanje,
Shift Management,Shift Management,
Show Future Payments,Prikaži buduće isplate,
Show Linked Delivery Notes,Prikaži povezane bilješke isporuke,
Show Sales Person,Prikaži osobu prodaje,
Show Stock Ageing Data,Prikaži podatke o starenju zaliha,
Show Warehouse-wise Stock,Pokažite zalihe pametne,
Size,Veličina,
Something went wrong while evaluating the quiz.,Nešto je pošlo po zlu tokom vrednovanja kviza.,
Sr,sr,
Start,početak,
Start Date cannot be before the current date,Datum početka ne može biti prije trenutnog datuma,
Start Time,Start Time,
Status,Status,
Status must be Cancelled or Completed,Status mora biti otkazan ili završen,
Stock Balance Report,Izvještaj o stanju zaliha,
Stock Entry has been already created against this Pick List,Unos dionica već je stvoren protiv ove Pick liste,
Stock Ledger ID,ID knjige knjige,
Stock Value ({0}) and Account Balance ({1}) are out of sync for account {2} and it's linked warehouses.,Vrijednost zaliha ({0}) i saldo računa ({1}) nisu usklađeni za račun {2} i povezani su skladišta.,
Stores - {0},Trgovine - {0},
Student with email {0} does not exist,Student sa e-mailom {0} ne postoji,
Submit Review,Submit Review,
Submitted,Potvrđeno,
Supplier Addresses And Contacts,Supplier Adrese i kontakti,
Synchronize this account,Sinhronizirajte ovaj račun,
Tag,Oznaka,
Target Location is required while receiving Asset {0} from an employee,Ciljna lokacija je potrebna dok primate imovinu {0} od zaposlenika,
Target Location is required while transferring Asset {0},Ciljana lokacija je potrebna prilikom prijenosa sredstva {0},
Target Location or To Employee is required while receiving Asset {0},Ciljana lokacija ili zaposleni su potrebni za vrijeme prijema imovine {0},
Task's {0} End Date cannot be after Project's End Date.,Završni datum zadatka {0} ne može biti nakon završetka datuma projekta.,
Task's {0} Start Date cannot be after Project's End Date.,Zadatak {0} Datum početka ne može biti nakon završetka datuma projekta.,
Tax Account not specified for Shopify Tax {0},Porezni račun nije naveden za Shopify Tax {0},
Tax Total,Porez ukupno,
Template,Predložak,
The Campaign '{0}' already exists for the {1} '{2}',Kampanja &#39;{0}&#39; već postoji za {1} &#39;{2}&#39;,
The difference between from time and To Time must be a multiple of Appointment,Razlika između vremena i vremena mora biti višestruka od imenovanja,
The field Asset Account cannot be blank,Polje Račun imovine ne može biti prazno,
The field Equity/Liability Account cannot be blank,Polje Vlasnički račun / račun odgovornosti ne može biti prazno,
The following serial numbers were created: <br><br> {0},Napravljeni su sljedeći serijski brojevi: <br><br> {0},
The parent account {0} does not exists in the uploaded template,Roditeljski račun {0} ne postoji u učitanom predlošku,
The question cannot be duplicate,Pitanje ne može biti duplicirano,
The selected payment entry should be linked with a creditor bank transaction,Odabrani unos za plaćanje treba biti povezan s bankovnom transakcijom vjerovnika,
The selected payment entry should be linked with a debtor bank transaction,Odabrani unos za plaćanje treba biti povezan sa bankovnom transakcijom dužnika,
The total allocated amount ({0}) is greated than the paid amount ({1}).,Ukupni dodijeljeni iznos ({0}) je namazan od uplaćenog iznosa ({1}).,
This Service Level Agreement is specific to Customer {0},Ovaj Ugovor o nivou usluge specifičan je za kupca {0},
This action will unlink this account from any external service integrating ERPNext with your bank accounts. It cannot be undone. Are you certain ?,Ova akcija će prekinuti vezu ovog računa s bilo kojom vanjskom uslugom koja integrira ERPNext sa vašim bankovnim računima. Ne može se poništiti. Jeste li sigurni?,
This bank account is already synchronized,Taj je bankovni račun već sinhroniziran,
This bank transaction is already fully reconciled,Ova je bankarska transakcija već u potpunosti usklađena,
This page keeps track of items you want to buy from sellers.,Ova stranica prati stvari koje želite kupiti od prodavača.,
This page keeps track of your items in which buyers have showed some interest.,Ova stranica prati vaše predmete za koje su kupci pokazali neki interes.,
Thursday,Četvrtak,
Title,Naslov,
"To allow over billing, update ""Over Billing Allowance"" in Accounts Settings or the Item.","Da biste omogućili prekomerno naplaćivanje, ažurirajte „Nadoplatu za naplatu“ u Postavkama računa ili Stavka.",
"To allow over receipt / delivery, update ""Over Receipt/Delivery Allowance"" in Stock Settings or the Item.","Da biste omogućili primanje / isporuku, ažurirajte &quot;Over Receipt / Dozvola za isporuku&quot; u Postavke zaliha ili Artikl.",
Total,Ukupno,
Total Payment Request amount cannot be greater than {0} amount,Ukupni iznos zahtjeva za plaćanje ne može biti veći od {0},
Total payments amount can't be greater than {},Ukupni iznos plaćanja ne može biti veći od {},
Totals,Ukupan rezultat,
Transactions already retreived from the statement,Transakcije su već povučene iz izjave,
Transfer Material to Supplier,Transfera Materijal dobavljaču,
Transport Receipt No and Date are mandatory for your chosen Mode of Transport,Ne i datum prijevoza obavezni su za odabrani način prijevoza,
Tuesday,Utorak,
Type,Vrsta,
Unable to find the time slot in the next {0} days for the operation {1}.,Nije moguće pronaći vremenski interval u narednih {0} dana za operaciju {1}.,
Unable to update remote activity,Nije moguće ažurirati daljinsku aktivnost,
Unknown Caller,Nepoznati pozivalac,
Unlink external integrations,Prekini vezu s vanjskim integracijama,
Unpublish Item,Ponipublishtavanje predmeta,
Unreconciled,Neusklađeno,
Unsupported GST Category for E-Way Bill JSON generation,Nepodržana GST kategorija za e-Way Bill JSON generacije,
Update,Ažurirati,
Update Details,Ažurirajte detalje,
Update Taxes for Items,Ažurirajte porez na stavke,
"Upload a bank statement, link or reconcile a bank account","Pošaljite bankovni izvod, povežite ili usklađujete bankovni račun",
Upload a statement,Pošaljite izjavu,
Use a name that is different from previous project name,Koristite ime koje se razlikuje od prethodnog naziva projekta,
User {0} is disabled,Korisnik {0} je onemogućen,
Users and Permissions,Korisnici i dozvole,
Valuation Rate required for Item {0} at row {1},Stopa vrednovanja potrebna za poziciju {0} u retku {1},
Values Out Of Sync,Vrijednosti van sinkronizacije,
Vehicle Type is required if Mode of Transport is Road,Vrsta vozila je obavezna ako je način prevoza cestovni,
Vendor Name,Ime dobavljača,
Verify Email,Potvrdi Email,
View,Pogled,
View all issues from {0},Pogledajte sva izdanja od {0},
View call log,Pogledajte dnevnik poziva,
Warehouse,Skladište,
Warehouse not found against the account {0},Skladište nije pronađeno na računu {0},
Welcome to {0},Dobrodošli na {0},
Why do think this Item should be removed?,Zašto mislite da bi ovaj predmet trebalo ukloniti?,
Work Order {0}: Job Card not found for the operation {1},Radni nalog {0}: kartica posla nije pronađena za operaciju {1},
Workday {0} has been repeated.,Radni dan {0} se ponavlja.,
XML Files Processed,Obrađene XML datoteke,
Year,Godina,
Yearly,Godišnji,
You,Vi,
You are not allowed to enroll for this course,Nije vam dopušteno da se upišete na ovaj kurs,
You are not enrolled in program {0},Niste upisani u program {0},
You can Feature upto 8 items.,Možete predstaviti do 8 predmeta.,
You can also copy-paste this link in your browser,Također možete copy-paste ovaj link u vašem pregledniku,
You can publish upto 200 items.,Možete objaviti do 200 predmeta.,
You have to enable auto re-order in Stock Settings to maintain re-order levels.,Morate omogućiti automatsku ponovnu narudžbu u Postavkama dionica da biste održavali razinu ponovne narudžbe.,
You must be a registered supplier to generate e-Way Bill,Morate biti registrirani dobavljač za generiranje e-puta računa,
You need to login as a Marketplace User before you can add any reviews.,"Prije nego što dodate bilo koju recenziju, morate se prijaviti kao korisnik Marketplacea.",
Your Featured Items,Vaše istaknute stavke,
Your Items,Vaše predmete,
Your Profile,Tvoj profil,
Your rating:,Vaša ocjena:,
and,i,
e-Way Bill already exists for this document,Za ovaj dokument već postoji e-Way Bill,
woocommerce - {0},woocommerce - {0},
{0} Coupon used are {1}. Allowed quantity is exhausted,{0} Kupon se koristi {1}. Dozvoljena količina se iscrpljuje,
{0} Name,{0} Ime,
{0} Operations: {1},{0} Operacije: {1},
{0} bank transaction(s) created,{0} Napravljene su bankarske transakcije,
{0} bank transaction(s) created and {1} errors,{0} napravljene bankarske transakcije i greške {1},
{0} can not be greater than {1},{0} ne može biti veći od {1},
{0} conversations,{0} razgovora,
{0} is not a company bank account,{0} nije bankovni račun kompanije,
{0} is not a group node. Please select a group node as parent cost center,{0} nije grupni čvor. Odaberite čvor grupe kao roditeljsko trošak,
{0} is not the default supplier for any items.,{0} nije zadani dobavljač za bilo koju robu.,
{0} is required,{0} je potrebno,
{0}: {1} must be less than {2},{0}: {1} mora biti manji od {2},
{} is required to generate E-Way Bill JSON,{} je potreban za generisanje e-Way Bill JSON,
"Invalid lost reason {0}, please create a new lost reason","Nevažeći izgubljeni razlog {0}, napravite novi izgubljeni razlog",
Profit This Year,Dobit ove godine,
Total Expense,Ukupni rashodi,
Total Expense This Year,Ukupni troškovi ove godine,
Total Income,Ukupni prihod,
Total Income This Year,Ukupni prihod u ovoj godini,
Barcode,Barkod,
Bold,Hrabro,
Center,Centar,
Clear,Jasno,
Comment,Komentiraj,
Comments,Komentari,
DocType,DocType,
Download,Skinuti,
Left,Lijevo,
Link,Veza,
New,Novo,
Not Found,Not found,
Print,Ispis,
Reference Name,Referentno ime,
Refresh,Osvježi,
Success,Uspeh,
Time,Vreme,
Value,Vrijednost,
Actual,Aktuelno,
Add to Cart,Dodaj u košaricu,
Days Since Last Order,Dani od poslednje narudžbe,
In Stock,U Stock,
Mode Of Payment,Način plaćanja,
No students Found,Nije pronađen nijedan student,
Not in Stock,Nije raspoloživo,
Please select a Customer,Izaberite klijenta,
Received From,Dobili od,
Sales Person,Prodajno lice,
To date cannot be before From date,Do danas ne može biti prije Od datuma,
Write Off,Otpisati,
{0} Created,{0} kreirano,
Email Id,Email ID,
No,Ne,
Reference Doctype,Referentna DOCTYPEhtml,
User Id,Korisnički broj,
Yes,Da,
Actual ,Stvaran,
Add to cart,Dodaj u košaricu,
Budget,Budžet,
Chart of Accounts,Chart of Accounts,
Customer database.,Baza podataka klijenata.,
Days Since Last order,Dana od posljednje narudžbe,
Download as JSON,Preuzmi kao JSON,
End date can not be less than start date,Datum završetka ne može biti manja od početnog datuma,
For Default Supplier (Optional),Za podrazumevani dobavljač,
From date cannot be greater than To date,Od datuma ne može biti veća od To Date,
Group by,Group By,
In stock,Na zalihama,
Item name,Naziv artikla,
Minimum Qty,Minimalni količina,
More details,Više informacija,
Nature of Supplies,Nature of Supplies,
No Items found.,Ništa nije pronađeno.,
No students found,No studenti Found,
Not in stock,Nije na zalihama,
Not permitted,Nije dozvoljeno,
Open Issues ,Otvorena pitanja,
Open Projects ,Open Projekti,
Open To Do ,Open To Do,
Operation Id,Operacija ID,
Partially ordered,parcijalno uređenih,
Please select company first,Prvo izaberite preduzeće,
Please select patient,Molimo izaberite Pacijent,
Printed On ,Printed On,
Projected qty,Projektovana kolicina,
Sales person,Referent prodaje,
Serial No {0} Created,Serijski Ne {0} stvorio,
Source Location is required for the Asset {0},Izvorna lokacija je potrebna za sredstvo {0},
Tax Id,Tax ID,
To Time,Za vrijeme,
To date cannot be before from date,Do danas ne može biti prije Od datuma,
Total Taxable value,Ukupna porezna vrijednost,
Upcoming Calendar Events ,Najave Kalendar događanja,
Value or Qty,Vrijednost ili broj,
Variance ,Varijanca,
Variant of,Varijanta,
Write off,Otpisati,
hours,Hours,
received from,Dobili od,
to,To,
Cards,Karte,
Percentage,Postotak,
Failed to setup defaults for country {0}. Please contact support@erpnext.com,Nije uspjelo postavljanje zadanih postavki za zemlju {0}. Molimo kontaktirajte support@erpnext.com,
Row #{0}: Item {1} is not a Serialized/Batched Item. It cannot have a Serial No/Batch No against it.,Redak # {0}: Stavka {1} nije serijski / skupa stavka. Ne može imati serijski broj / br. Seriju protiv.,
Please set {0},Molimo postavite {0},
Please set {0},Molimo postavite {0},supplier
Draft,Skica,"docstatus,=,0"
Cancelled,Otkazano,"docstatus,=,2"
Please setup Instructor Naming System in Education > Education Settings,Postavite sistem imenovanja instruktora u Obrazovanje&gt; Postavke obrazovanja,
Please set Naming Series for {0} via Setup > Settings > Naming Series,Molimo postavite Naming Series za {0} putem Podešavanje&gt; Podešavanja&gt; Imenovanje serije,
UOM Conversion factor ({0} -> {1}) not found for item: {2},Faktor konverzije UOM ({0} -&gt; {1}) nije pronađen za stavku: {2},
Item Code > Item Group > Brand,Kod artikla&gt; Grupa artikala&gt; Marka,
Customer > Customer Group > Territory,Kupac&gt; grupa kupaca&gt; teritorija,
Supplier > Supplier Type,Dobavljač&gt; vrsta dobavljača,
The value of {0} differs between Items {1} and {2},Vrijednost {0} razlikuje se između stavki {1} i {2},
Auto Fetch,Automatsko dohvaćanje,
Fetch Serial Numbers based on FIFO,Dohvati serijske brojeve na osnovu FIFO-a,
"Outward taxable supplies(other than zero rated, nil rated and exempted)","Oporezive vanjske isporuke (osim nulte ocjene, nula i izuzete)",
"To allow different rates, disable the {0} checkbox in {1}.","Da biste omogućili različite stope, onemogućite {0} potvrdni okvir u {1}.",
Asset{} {assets_link} created for {},Sredstvo {} {assets_link} kreirano za {},
Row {}: Asset Naming Series is mandatory for the auto creation for item {},Red {}: Serija imenovanja sredstava obavezna je za automatsko kreiranje stavke {},
Assets not created for {0}. You will have to create asset manually.,Sredstva nisu kreirana za {0}. Morat ćete stvoriti materijal ručno.,
{0} {1} has accounting entries in currency {2} for company {3}. Please select a receivable or payable account with currency {2}.,{0} {1} ima knjigovodstvene stavke u valuti {2} za kompaniju {3}. Odaberite račun potraživanja ili plaćanja u valuti {2}.,
Invalid Account,Nevažeći račun,
Purchase Order Required,Narudžbenica kupnje je obavezna,
Purchase Receipt Required,Kupnja Potvrda Obvezno,
Account Missing,Račun nedostaje,
Requested,Tražena,
Partially Paid,Djelomično plaćeno,
Invalid Account Currency,Nevažeća valuta računa,
"Row {0}: The item {1}, quantity must be positive number","Red {0}: Stavka {1}, količina mora biti pozitivan broj",
"Please set {0} for Batched Item {1}, which is used to set {2} on Submit.","Postavite {0} za grupnu stavku {1}, koja se koristi za postavljanje {2} na Submit.",
Expiry Date Mandatory,Datum isteka obavezan,
Variant Item,Variant Item,
BOM 1 {0} and BOM 2 {1} should not be same,BOM 1 {0} i BOM 2 {1} ne bi trebali biti isti,
Note: Item {0} added multiple times,Napomena: Stavka {0} dodana je više puta,
YouTube,YouTube,
Vimeo,Vimeo,
Publish Date,Datum objave,
Duration,Trajanje,
Advanced Settings,Napredne postavke,
Path,Put,
Components,komponente,
Verified By,Ovjeren od strane,
Invalid naming series (. missing) for {0},Nevažeća serija imenovanja (. Nedostaje) za {0},
Filter Based On,Filter zasnovan na,
Reqd by date,Potrebno po datumu,
Manufacturer Part Number <b>{0}</b> is invalid,Broj dijela proizvođača <b>{0}</b> je nevažeći,
Invalid Part Number,Nevažeći broj dijela,
Select atleast one Social Media from Share on.,Odaberite barem jedan društveni medij iz Dijeli dalje.,
Invalid Scheduled Time,Nevažeće zakazano vrijeme,
Length Must be less than 280.,Dužina Mora biti manja od 280.,
Error while POSTING {0},Greška prilikom POSTAVLJANJA {0},
"Session not valid, Do you want to login?","Sesija nije važeća, želite li se prijaviti?",
Session Active,Sesija aktivna,
Session Not Active. Save doc to login.,Sesija nije aktivna. Sačuvajte dokument za prijavu.,
Error! Failed to get request token.,Greška! Dohvaćanje tokena zahtjeva nije uspjelo.,
Invalid {0} or {1},Nevažeće {0} ili {1},
Error! Failed to get access token.,Greška! Dohvaćanje tokena za pristup nije uspjelo.,
Invalid Consumer Key or Consumer Secret Key,Nevažeći potrošački ključ ili tajni ključ potrošača,
Your Session will be expire in ,Vaša sesija istječe za,
 days.,dana.,
Session is expired. Save doc to login.,Sjednica je istekla. Sačuvajte dokument za prijavu.,
Error While Uploading Image,Greška prilikom prijenosa slike,
You Didn't have permission to access this API,Niste imali dozvolu za pristup ovom API-ju,
Valid Upto date cannot be before Valid From date,Važeći Ažurirani datum ne može biti prije Važi od,
Valid From date not in Fiscal Year {0},Važi od datuma koji nije u fiskalnoj godini {0},
Valid Upto date not in Fiscal Year {0},Vrijedi do datuma koji nije u fiskalnoj godini {0},
Group Roll No,Grupna rola br,
Maintain Same Rate Throughout Sales Cycle,Održavati ista stopa Tijekom cijele prodajni ciklus,
"Row {1}: Quantity ({0}) cannot be a fraction. To allow this, disable '{2}' in UOM {3}.","Red {1}: Količina ({0}) ne može biti razlomak. Da biste to omogućili, onemogućite &#39;{2}&#39; u UOM-u {3}.",
Must be Whole Number,Mora biti cijeli broj,
Please setup Razorpay Plan ID,Molimo postavite Razorpay ID plana,
Contact Creation Failed,Stvaranje kontakta nije uspjelo,
Leaves Expired,Lišće je isteklo,
Row #{}: {} of {} should be {}. Please modify the account or select a different account.,Red # {}: {} od {} trebao bi biti {}. Izmijenite račun ili odaberite drugi račun.,
Row #{}: Please asign task to a member.,Red # {}: Molimo dodijelite zadatak članu.,
Process Failed,Proces nije uspio,
Tally Migration Error,Pogreška migracije Tally-a,
Please set Warehouse in Woocommerce Settings,Molimo postavite Warehouse u Woocommerce Settings,
Row {0}: Delivery Warehouse ({1}) and Customer Warehouse ({2}) can not be same,Red {0}: Skladište za dostavu ({1}) i Skladište za kupce ({2}) ne mogu biti isto,
Row {0}: Due Date in the Payment Terms table cannot be before Posting Date,Red {0}: Datum dospijeća u tablici Uslovi plaćanja ne može biti prije datuma knjiženja,
Cannot find {} for item {}. Please set the same in Item Master or Stock Settings.,Nije moguće pronaći {} za stavku {}. Molimo postavite isto u stavci Master Master ili Stock Settings.,
Row #{0}: The batch {1} has already expired.,Redak {0}: serija {1} je već istekla.,
Start Year and End Year are mandatory,Početna i završna godina su obavezne,
GL Entry,GL ulaz,
Cannot allocate more than {0} against payment term {1},Ne možete dodijeliti više od {0} prema roku plaćanja {1},
The root account {0} must be a group,Korijenski račun {0} mora biti grupa,
Shipping rule not applicable for country {0} in Shipping Address,Pravilo dostave nije primjenjivo za zemlju {0} u adresi za dostavu,
Get Payments from,Primajte uplate od,
Set Shipping Address or Billing Address,Postavite adresu za dostavu ili adresu za naplatu,
Consultation Setup,Postavljanje konsultacija,
Fee Validity,Vrijednost naknade,
Laboratory Setup,Postavljanje laboratorija,
Dosage Form,Formular za doziranje,
Records and History,Zapisi i istorija,
Patient Medical Record,Medicinski zapis pacijenta,
Rehabilitation,Rehabilitacija,
Exercise Type,Tip vježbe,
Exercise Difficulty Level,Nivo teškoće u vježbanju,
Therapy Type,Vrsta terapije,
Therapy Plan,Plan terapije,
Therapy Session,Sjednica terapije,
Motor Assessment Scale,Skala za procjenu motora,
[Important] [ERPNext] Auto Reorder Errors,[Važno] [ERPNext] Pogreške automatskog preuređivanja,
"Regards,","Pozdrav,",
The following {0} were created: {1},Stvoreni su sljedeći {0}: {1},
Work Orders,Nalozi za rad,
The {0} {1} created sucessfully,{0} {1} je uspješno kreiran,
Work Order cannot be created for following reason: <br> {0},Radni nalog se ne može kreirati iz sljedećeg razloga:<br> {0},
Add items in the Item Locations table,Dodajte stavke u tabelu Lokacije predmeta,
Update Current Stock,Ažurirajte trenutne zalihe,
"{0} Retain Sample is based on batch, please check Has Batch No to retain sample of item","{0} Zadržavanje uzorka temelji se na šarži, označite Ima šaržu br. Da biste zadržali uzorak predmeta",
Empty,Prazno,
Currently no stock available in any warehouse,Trenutno nema zaliha u bilo kojem skladištu,
BOM Qty,BOM Količina,
Time logs are required for {0} {1},Potrebni su vremenski dnevnici za {0} {1},
Total Completed Qty,Ukupno završeno Količina,
Qty to Manufacture,Količina za proizvodnju,
Social Media Campaigns,Kampanje na društvenim mrežama,
From Date can not be greater than To Date,Od datuma ne može biti veći od datuma,
Please set a Customer linked to the Patient,Postavite kupca povezanog s pacijentom,
Customer Not Found,Kupac nije pronađen,
Please Configure Clinical Procedure Consumable Item in ,Molimo konfigurirajte potrošni predmet za klinički postupak u,
Missing Configuration,Nedostaje konfiguracija,
Out Patient Consulting Charge Item,Iznad Pansionske konsultantske stavke,
Inpatient Visit Charge Item,Obavezna posjeta obaveznoj posjeti,
OP Consulting Charge,OP Konsalting Charge,
Inpatient Visit Charge,Hirurška poseta,
Appointment Status,Status imenovanja,
Test: ,Test:,
Collection Details: ,Detalji kolekcije:,
{0} out of {1},{0} od {1},
Select Therapy Type,Odaberite vrstu terapije,
{0} sessions completed,Završeno je {0} sesija,
{0} session completed,Završena je {0} sesija,
 out of {0},od {0},
Therapy Sessions,Terapijske sesije,
Add Exercise Step,Dodajte korak vježbe,
Edit Exercise Step,Uredite korak vježbe,
Patient Appointments,Imenovanja pacijenta,
Item with Item Code {0} already exists,Stavka sa kodom artikla {0} već postoji,
Registration Fee cannot be negative or zero,Naknada za registraciju ne može biti negativna ili nula,
Configure a service Item for {0},Konfigurirajte stavku usluge za {0},
Temperature: ,Temperatura:,
Pulse: ,Puls:,
Respiratory Rate: ,Stopa disanja:,
BP: ,BP:,
BMI: ,BMI:,
Note: ,Bilješka:,
Check Availability,Provjera dostupnosti,
Please select Patient first,Prvo odaberite Pacijent,
Please select a Mode of Payment first,Prvo odaberite način plaćanja,
Please set the Paid Amount first,Prvo postavite plaćeni iznos,
Not Therapies Prescribed,Nisu propisane terapije,
There are no Therapies prescribed for Patient {0},Nema propisanih terapija za pacijenta {0},
Appointment date and Healthcare Practitioner are Mandatory,Datum imenovanja i zdravstveni radnik su obavezni,
No Prescribed Procedures found for the selected Patient,Nisu pronađeni propisani postupci za odabranog pacijenta,
Please select a Patient first,Prvo odaberite pacijenta,
There are no procedure prescribed for ,Nije propisana procedura za,
Prescribed Therapies,Propisane terapije,
Appointment overlaps with ,Imenovanje se preklapa sa,
{0} has appointment scheduled with {1} at {2} having {3} minute(s) duration.,{0} ima zakazan sastanak sa {1} u {2} u trajanju od {3} minuta.,
Appointments Overlapping,Imenovanja koja se preklapaju,
Consulting Charges: {0},Naknade za savjetovanje: {0},
Appointment Cancelled. Please review and cancel the invoice {0},Imenovanje otkazano. Pregledajte i otkažite račun {0},
Appointment Cancelled.,Imenovanje otkazano.,
Fee Validity {0} updated.,Valjanost naknade {0} je ažurirana.,
Practitioner Schedule Not Found,Raspored praktičara nije pronađen,
{0} is on a Half day Leave on {1},{0} je na pola dana odlaska {1},
{0} is on Leave on {1},{0} je na dopustu {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner,{0} nema raspored zdravstvenih radnika. Dodajte ga u Healthcare Practitioner,
Healthcare Service Units,Jedinice zdravstvene zaštite,
Complete and Consume,Dovršite i potrošite,
Complete {0} and Consume Stock?,Ispunite {0} i potrošite zalihe?,
Complete {0}?,Dovršiti {0}?,
Stock quantity to start the Procedure is not available in the Warehouse {0}. Do you want to record a Stock Entry?,Količina zaliha za pokretanje postupka nije dostupna u Skladištu {0}. Da li želite snimiti unos zaliha?,
{0} as on {1},{0} kao {1},
Clinical Procedure ({0}):,Klinički postupak ({0}):,
Please set Customer in Patient {0},Postavite kupca za pacijenta {0},
Item {0} is not active,Stavka {0} nije aktivna,
Therapy Plan {0} created successfully.,Plan terapije {0} je uspješno kreiran.,
Symptoms: ,Simptomi:,
No Symptoms,Nema simptoma,
Diagnosis: ,Dijagnoza:,
No Diagnosis,Nema dijagnoze,
Drug(s) Prescribed.,Lijek (i) propisani.,
Test(s) Prescribed.,Test (i) propisani.,
Procedure(s) Prescribed.,Procedura (i) propisana.,
Counts Completed: {0},Prebrojavanja završena: {0},
Patient Assessment,Procjena pacijenta,
Assessments,Procjene,
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Heads (ili grupe) protiv kojih Računovodstvo unosi se izrađuju i sredstva se održavaju.,
Account Name,Naziv konta,
Inter Company Account,Inter Company Account,
Parent Account,Roditelj račun,
Setting Account Type helps in selecting this Account in transactions.,Postavljanje Vrsta računa pomaže u odabiru ovaj račun u prometu.,
Chargeable,Naplativ,
Rate at which this tax is applied,Stopa po kojoj je taj porez se primjenjuje,
Frozen,Zaleđeni,
"If the account is frozen, entries are allowed to restricted users.","Ako je račun zamrznut , unosi dopušteno ograničene korisnike .",
Balance must be,Bilans mora biti,
Lft,Lft,
Rgt,Rgt,
Old Parent,Stari Roditelj,
Include in gross,Uključuju se u bruto,
Auditor,Revizor,
Accounting Dimension,Računovodstvena dimenzija,
Dimension Name,Ime dimenzije,
Dimension Defaults,Zadane dimenzije,
Accounting Dimension Detail,Detalji dimenzije računovodstva,
Default Dimension,Podrazumevana dimenzija,
Mandatory For Balance Sheet,Obavezno za bilans stanja,
Mandatory For Profit and Loss Account,Obavezno za račun dobiti i gubitka,
Accounting Period,Period računovodstva,
Period Name,Ime perioda,
Closed Documents,Zatvoreni dokumenti,
Accounts Settings,Podešavanja konta,
Settings for Accounts,Postavke za račune,
Make Accounting Entry For Every Stock Movement,Provjerite knjiženje za svaki burzi pokreta,
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Korisnici s ovom ulogom smiju postaviti zamrznute račune i izradu / izmjenu računovodstvenih unosa protiv zamrznutih računa,
Determine Address Tax Category From,Odredite kategoriju adrese poreza od,
Over Billing Allowance (%),Dodatak za naplatu (%),
Credit Controller,Kreditne kontroler,
Check Supplier Invoice Number Uniqueness,Check Dobavljač Faktura Broj Jedinstvenost,
Make Payment via Journal Entry,Izvršiti uplatu preko Journal Entry,
Unlink Payment on Cancellation of Invoice,Odvajanje Plaćanje o otkazivanju fakture,
Book Asset Depreciation Entry Automatically,Knjiga imovine Amortizacija Entry Automatski,
Automatically Add Taxes and Charges from Item Tax Template,Automatski dodajte poreze i pristojbe sa predloška poreza na stavke,
Automatically Fetch Payment Terms,Automatski preuzmi Uvjete plaćanja,
Show Payment Schedule in Print,Prikaži raspored plaćanja u štampanju,
Currency Exchange Settings,Postavke razmjene valuta,
Allow Stale Exchange Rates,Dozvolite stare kurseve,
Stale Days,Zastareli dani,
Report Settings,Postavke izveštaja,
Use Custom Cash Flow Format,Koristite Custom Flow Flow Format,
Allowed To Transact With,Dozvoljeno za transakciju,
SWIFT number,SWIFT broj,
Branch Code,Branch Code,
Address and Contact,Adresa i kontakt,
Address HTML,Adressa u HTML-u,
Contact HTML,Kontakt HTML,
Data Import Configuration,Konfiguracija uvoza podataka,
Bank Transaction Mapping,Mapiranje bankovnih transakcija,
Plaid Access Token,Plaid Access Token,
Company Account,Račun kompanije,
Account Subtype,Podtip računa,
Is Default Account,Je zadani račun,
Is Company Account,Račun kompanije,
Party Details,Party Detalji,
Account Details,Detalji konta,
IBAN,IBAN,
Bank Account No,Bankarski račun br,
Integration Details,Detalji integracije,
Integration ID,ID integracije,
Last Integration Date,Datum posljednje integracije,
Change this date manually to setup the next synchronization start date,Ručno promenite ovaj datum da biste postavili sledeći datum početka sinhronizacije,
Mask,Maska,
Bank Account Subtype,Podvrsta bankovnog računa,
Bank Account Type,Vrsta bankovnog računa,
Bank Guarantee,Bankarska garancija,
Bank Guarantee Type,Tip garancije banke,
Receiving,Primanje,
Providing,Pružanje,
Reference Document Name,Referentni naziv dokumenta,
Validity in Days,Valjanost u Dani,
Bank Account Info,Informacije o bankovnom računu,
Clauses and Conditions,Klauzule i uslovi,
Other Details,Ostali detalji,
Bank Guarantee Number,Bankarska garancija Broj,
Name of Beneficiary,Ime korisnika,
Margin Money,Margin Money,
Charges Incurred,Napunjene naknade,
Fixed Deposit Number,Fiksni depozitni broj,
Account Currency,Valuta račun,
Select the Bank Account to reconcile.,Odaberite bankovni račun da biste ga uskladili.,
Include Reconciled Entries,Uključi pomirio objave,
Get Payment Entries,Get plaćanja unosi,
Payment Entries,plaćanje unosi,
Update Clearance Date,Ažurirajte provjeri datum,
Bank Reconciliation Detail,Banka Pomirenje Detalj,
Cheque Number,Broj čeka,
Cheque Date,Datum čeka,
Statement Header Mapping,Mapiranje zaglavlja izjave,
Statement Headers,Izjave zaglavlja,
Transaction Data Mapping,Mapiranje podataka o transakcijama,
Mapped Items,Mapped Items,
Bank Statement Settings Item,Stavka Postavke banke,
Mapped Header,Mapped Header,
Bank Header,Bank Header,
Bank Statement Transaction Entry,Prijavljivanje transakcije u banci,
Bank Transaction Entries,Bankovne transakcije,
New Transactions,Nove transakcije,
Match Transaction to Invoices,Transakcija na fakture,
Create New Payment/Journal Entry,Kreirajte novu uplatu / dnevnik,
Submit/Reconcile Payments,Pošalji / usaglasite plaćanja,
Matching Invoices,Upoređivanje faktura,
Payment Invoice Items,Stavke fakture za plaćanje,
Reconciled Transactions,Usklađene transakcije,
Bank Statement Transaction Invoice Item,Stavka fakture za transakciju iz banke,
Payment Description,Opis plaćanja,
Invoice Date,Datum fakture,
invoice,faktura,
Bank Statement Transaction Payment Item,Stavka za plaćanje transakcije u banci,
outstanding_amount,preostali iznos,
Payment Reference,Reference za plaćanje,
Bank Statement Transaction Settings Item,Stavka Postavke Transakcije Stavke Bank Banke,
Bank Data,Podaci banke,
Mapped Data Type,Mapped Data Type,
Mapped Data,Mapped Data,
Bank Transaction,Bankovna transakcija,
ACC-BTN-.YYYY.-,ACC-BTN-.YYYY.-,
Transaction ID,transakcija ID,
Unallocated Amount,neraspoređenih Iznos,
Field in Bank Transaction,Polje u bankovnoj transakciji,
Column in Bank File,Stupac u datoteci banke,
Bank Transaction Payments,Plaćanja putem bankarskih transakcija,
Control Action,Kontrolna akcija,
Applicable on Material Request,Primenljivo na zahtev za materijal,
Action if Annual Budget Exceeded on MR,Akcija ako je godišnji budžet prešao na MR,
Warn,Upozoriti,
Ignore,Ignorirati,
Action if Accumulated Monthly Budget Exceeded on MR,Akcija ako je akumulirani mesečni budžet prešao na MR,
Applicable on Purchase Order,Primenljivo na nalogu za kupovinu,
Action if Annual Budget Exceeded on PO,Akcija ako je godišnji budžet prešao na PO,
Action if Accumulated Monthly Budget Exceeded on PO,Akcija ako je zbirni mesečni budžet prešao na PO,
Applicable on booking actual expenses,Primenjuje se prilikom rezervisanja stvarnih troškova,
Action if Annual Budget Exceeded on Actual,Akcija ako se godišnji budžet premašuje na aktuelnom nivou,
Action if Accumulated Monthly Budget Exceeded on Actual,Akcija ako se akumulirani mesečni budžet premašuje na aktuelnom nivou,
Budget Accounts,računa budžeta,
Budget Account,računa budžeta,
Budget Amount,budžet Iznos,
C-Form,C-Form,
ACC-CF-.YYYY.-,ACC-CF-.YYYY.-,
C-Form No,C-Obrazac br,
Received Date,Datum pozicija,
Quarter,Četvrtina,
I,ja,
II,II,
III,III,
IV,IV,
C-Form Invoice Detail,C-Obrazac Račun Detalj,
Invoice No,Račun br,
Cash Flow Mapper,Mapper za gotovinski tok,
Section Name,Naziv odeljka,
Section Header,Header odeljka,
Section Leader,Rukovodilac odjela,
e.g Adjustments for:,npr. prilagođavanja za:,
Section Subtotal,Sekcija subota,
Section Footer,Segment Footer,
Position,Pozicija,
Cash Flow Mapping,Mapiranje tokova gotovine,
Select Maximum Of 1,Izaberite maksimum od 1,
Is Finance Cost,Da li je finansijski trošak,
Is Working Capital,Je radni kapital,
Is Finance Cost Adjustment,Da li je usklađivanje troškova finansiranja,
Is Income Tax Liability,Da li je porez na dohodak,
Is Income Tax Expense,Da li je porez na prihod?,
Cash Flow Mapping Accounts,Mapiranje računa gotovine,
account,Konto,
Cash Flow Mapping Template,Šablon za mapiranje toka gotovine,
Cash Flow Mapping Template Details,Detalji šablona za mapiranje gotovog toka,
POS-CLO-,POS-CLO-,
Custody,Starateljstvo,
Net Amount,Neto iznos,
Cashier Closing Payments,Plaćanje plaćanja blagajnika,
Chart of Accounts Importer,Kontni plan računa,
Import Chart of Accounts from a csv file,Uvoz računa sa CSV datoteke,
Attach custom Chart of Accounts file,Priložite datoteku prilagođenog računa računa,
Chart Preview,Pregled grafikona,
Chart Tree,Chart Tree,
Cheque Print Template,Ček Ispis Template,
Has Print Format,Ima Print Format,
Primary Settings,primarni Postavke,
Cheque Size,Ček Veličina,
Regular,redovan,
Starting position from top edge,Početne pozicije od gornje ivice,
Cheque Width,Ček Širina,
Cheque Height,Ček Visina,
Scanned Cheque,skeniranim Ček,
Is Account Payable,Je nalog plaćaju,
Distance from top edge,Udaljenost od gornje ivice,
Distance from left edge,Udaljenost od lijevog ruba,
Message to show,Poruke za prikaz,
Date Settings,Datum Postavke,
Starting location from left edge,Početna lokacija od lijevog ruba,
Payer Settings,Payer Postavke,
Width of amount in word,Širina iznos u riječi,
Line spacing for amount in words,Prored za iznos u riječima,
Amount In Figure,Iznos Na slici,
Signatory Position,potpisnik Pozicija,
Closed Document,Zatvoreni dokument,
Track separate Income and Expense for product verticals or divisions.,Pratite odvojene prihoda i rashoda za vertikala proizvod ili podjele.,
Cost Center Name,Troška Name,
Parent Cost Center,Roditelj troška,
lft,LFT,
rgt,RGT,
Coupon Code,Kupon kod,
Coupon Name,Naziv kupona,
"e.g. ""Summer Holiday 2019 Offer 20""",npr. &quot;Ljetni odmor 201 ponuda 20&quot;,
Coupon Type,Vrsta kupona,
Promotional,Promotivni,
Gift Card,Poklon kartica,
unique e.g. SAVE20  To be used to get discount,jedinstveni npr. SAVE20 Da biste koristili popust,
Validity and Usage,Rok valjanosti i upotreba,
Valid From,Vrijedi od,
Valid Upto,Vrijedi do,
Maximum Use,Maksimalna upotreba,
Used,Rabljeni,
Coupon Description,Opis kupona,
Discounted Invoice,Račun s popustom,
Debit to,Na teret,
Exchange Rate Revaluation,Revalorizacija deviznog kursa,
Get Entries,Get Entries,
Exchange Rate Revaluation Account,Račun revalorizacije kursa,
Total Gain/Loss,Ukupni dobitak / gubitak,
Balance In Account Currency,Balans u valuti računa,
Current Exchange Rate,Tekući kurs,
Balance In Base Currency,Bilans u osnovnoj valuti,
New Exchange Rate,Novi kurs,
New Balance In Base Currency,Novo stanje u osnovnoj valuti,
Gain/Loss,Dobit / gubitak,
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,** Fiskalna godina ** predstavlja finansijske godine. Svi računovodstvene stavke i drugih većih transakcija se prate protiv ** Fiskalna godina **.,
Year Name,Naziv godine,
"For e.g. 2012, 2012-13","Za npr. 2012, 2012-13",
Year Start Date,Početni datum u godini,
Year End Date,Završni datum godine,
Companies,Companies,
Auto Created,Automatski kreiran,
Stock User,Stock korisnika,
Fiscal Year Company,Fiskalna godina Company,
Debit Amount,Debit Iznos,
Credit Amount,Iznos kredita,
Debit Amount in Account Currency,Debit Iznos u računu valuta,
Credit Amount in Account Currency,Iznos kredita u računu valuta,
Voucher Detail No,Bon Detalj Ne,
Is Opening,Je Otvaranje,
Is Advance,Je avans,
To Rename,Preimenovati,
GST Account,GST račun,
CGST Account,CGST nalog,
SGST Account,SGST nalog,
IGST Account,IGST nalog,
CESS Account,CESS nalog,
Loan Start Date,Datum početka zajma,
Loan Period (Days),Period zajma (Dani),
Loan End Date,Datum završetka zajma,
Bank Charges,Naknade za banke,
Short Term Loan Account,Kratkoročni račun zajma,
Bank Charges Account,Račun bankovnih naknada,
Accounts Receivable Credit Account,Račun za naplatu potraživanja,
Accounts Receivable Discounted Account,Račun s diskontovanim potraživanjima,
Accounts Receivable Unpaid Account,Neplaćeni račun za potraživanja,
Item Tax Template,Predložak poreza na stavku,
Tax Rates,Porezne stope,
Item Tax Template Detail,Detalj predloška predloška poreza,
Entry Type,Entry Tip,
Inter Company Journal Entry,Inter Company Journal Entry,
Bank Entry,Bank Entry,
Cash Entry,Cash Entry,
Credit Card Entry,Credit Card Entry,
Contra Entry,Contra Entry,
Excise Entry,Akcizama Entry,
Write Off Entry,Napišite Off Entry,
Opening Entry,Otvaranje unos,
ACC-JV-.YYYY.-,ACC-JV-YYYY.-,
Accounting Entries,Računovodstvo unosi,
Total Debit,Ukupno zaduženje,
Total Credit,Ukupna kreditna,
Difference (Dr - Cr),Razlika ( dr. - Cr ),
Make Difference Entry,Čine razliku Entry,
Total Amount Currency,Ukupan iznos valute,
Total Amount in Words,Ukupan iznos riječima,
Remark,Primjedba,
Paid Loan,Paid Loan,
Inter Company Journal Entry Reference,Referenca za unos dnevnika Inter Company,
Write Off Based On,Otpis na temelju,
Get Outstanding Invoices,Kreiraj neplaćene račune,
Write Off Amount,Otpis iznosa,
Printing Settings,Printing Settings,
Pay To / Recd From,Platiti Da / RecD Od,
Payment Order,Nalog za plaćanje,
Subscription Section,Subscription Section,
Journal Entry Account,Journal Entry račun,
Account Balance,Bilans konta,
Party Balance,Party Balance,
Accounting Dimensions,Računovodstvene dimenzije,
If Income or Expense,Ako prihoda i rashoda,
Exchange Rate,Tečaj,
Debit in Company Currency,Debit u Company valuta,
Credit in Company Currency,Credit Company valuta,
Payroll Entry,Unos plata,
Employee Advance,Advance Employee,
Reference Due Date,Referentni rok za dostavljanje,
Loyalty Program Tier,Nivo programa lojalnosti,
Redeem Against,Iskoristi protiv,
Expiry Date,Datum isteka,
Loyalty Point Entry Redemption,Povlačenje ulazne točke na lojalnost,
Redemption Date,Datum otkupljenja,
Redeemed Points,Iskorišćene tačke,
Loyalty Program Name,Ime programa lojalnosti,
Loyalty Program Type,Vrsta programa lojalnosti,
Single Tier Program,Jednostavni program,
Multiple Tier Program,Multiple Tier Program,
Customer Territory,Teritorija kupaca,
Auto Opt In (For all customers),Automatsko uključivanje (za sve potrošače),
Collection Tier,Kolekcija Tier,
Collection Rules,Pravila sakupljanja,
Redemption,Otkupljenje,
Conversion Factor,Konverzijski faktor,
1 Loyalty Points = How much base currency?,1 Loyalty Bodovi = Kolika osnovna valuta?,
Expiry Duration (in days),Trajanje isteka (u danima),
Help Section,Help Section,
Loyalty Program Help,Pomoć programa za lojalnost,
Loyalty Program Collection,Zbirka programa lojalnosti,
Tier Name,Tier Name,
Minimum Total Spent,Minimalno ukupno potrošeno,
Collection Factor (=1 LP),Faktor sakupljanja (= 1 LP),
For how much spent = 1 Loyalty Point,Za koliko je potrošeno = 1 lojalnost,
Mode of Payment Account,Način plaćanja računa,
Default Account,Podrazumjevani konto,
Default account will be automatically updated in POS Invoice when this mode is selected.,Podrazumevani nalog će se automatski ažurirati u POS računu kada je izabran ovaj režim.,
**Monthly Distribution** helps you distribute the Budget/Target across months if you have seasonality in your business.,** Mjesečna distribucija ** će Vam pomoći distribuirati budžeta / Target preko mjeseca ako imate sezonalnost u vaše poslovanje.,
Distribution Name,Naziv distribucije,
Name of the Monthly Distribution,Naziv Mjesečni distribucije,
Monthly Distribution Percentages,Mjesečni Distribucija Procenat,
Monthly Distribution Percentage,Mjesečni Distribucija Postotak,
Percentage Allocation,Postotak Raspodjela,
Create Missing Party,Napravite Missing Party,
Create missing customer or supplier.,Kreirajte nestalog klijenta ili dobavljača.,
Opening Invoice Creation Tool Item,Stavka o otvaranju fakture kreiranja stavke,
Temporary Opening Account,Privremeni račun za otvaranje,
Party Account,Party račun,
Type of Payment,Vrsta plaćanja,
ACC-PAY-.YYYY.-,ACC-PAY-.YYYY.-,
Receive,Primiti,
Internal Transfer,Interna Transfer,
Payment Order Status,Status naloga za plaćanje,
Payment Ordered,Raspored plaćanja,
Payment From / To,Plaćanje Od / Do,
Company Bank Account,Bankovni račun kompanije,
Party Bank Account,Bankovni račun stranke,
Account Paid From,Računa isplaćuju iz,
Account Paid To,Račun Paid To,
Paid Amount (Company Currency),Uplaćeni iznos (poduzeća Valuta),
Received Amount,Primljeni Iznos,
Received Amount (Company Currency),Primljeni Iznos (Company Valuta),
Get Outstanding Invoice,Nabavite izvanredni račun,
Payment References,plaćanje Reference,
Writeoff,Otpisati,
Total Allocated Amount,Ukupan dodijeljeni iznos,
Total Allocated Amount (Company Currency),Ukupan dodijeljeni iznos (Company Valuta),
Set Exchange Gain / Loss,Set Exchange dobitak / gubitak,
Difference Amount (Company Currency),Razlika Iznos (Company Valuta),
Write Off Difference Amount,Otpis Razlika Iznos,
Deductions or Loss,Smanjenja ili gubitak,
Payment Deductions or Loss,Plaćanje Smanjenja ili gubitak,
Cheque/Reference Date,Ček / Referentni datum,
Payment Entry Deduction,Plaćanje Entry Odbitak,
Payment Entry Reference,Plaćanje Entry Reference,
Allocated,Izdvojena,
Payment Gateway Account,Payment Gateway računa,
Payment Account,Plaćanje računa,
Default Payment Request Message,Uobičajeno plaćanje poruka zahtjeva,
PMO-,PMO-,
Payment Order Type,Vrsta naloga za plaćanje,
Payment Order Reference,Referentni nalog za plaćanje,
Bank Account Details,Detalji o bankovnom računu,
Payment Reconciliation,Pomirenje plaćanja,
Receivable / Payable Account,Potraživanja / Account plaćaju,
Bank / Cash Account,Banka / Cash račun,
From Invoice Date,Iz Datum računa,
To Invoice Date,Da biste Datum računa,
Minimum Invoice Amount,Minimalni iznos fakture,
Maximum Invoice Amount,Maksimalni iznos fakture,
System will fetch all the entries if limit value is zero.,Sustav će preuzeti sve unose ako je granična vrijednost jednaka nuli.,
Get Unreconciled Entries,Kreiraj neusklađene ulaze,
Unreconciled Payment Details,Nesaglašen Detalji plaćanja,
Invoice/Journal Entry Details,Račun / Journal Entry Detalji,
Payment Reconciliation Invoice,Pomirenje Plaćanje fakture,
Invoice Number,Račun broj,
Payment Reconciliation Payment,Pomirenje Plaćanje Plaćanje,
Reference Row,referentni Row,
Allocated amount,Izdvojena iznosu,
Payment Request Type,Tip zahtjeva za plaćanje,
Outward,Napolju,
Inward,Unutra,
ACC-PRQ-.YYYY.-,ACC-PRQ-YYYY.-,
Transaction Details,Detalji transakcije,
Amount in customer's currency,Iznos u valuti kupca,
Is a Subscription,Je Pretplata,
Transaction Currency,transakcija valuta,
Subscription Plans,Planovi pretplate,
SWIFT Number,SWIFT broj,
Recipient Message And Payment Details,Primalac poruka i plaćanju,
Make Sales Invoice,Ostvariti prodaju fakturu,
Mute Email,Mute-mail,
payment_url,payment_url,
Payment Gateway Details,Payment Gateway Detalji,
Payment Schedule,Raspored plaćanja,
Invoice Portion,Portfelj fakture,
Payment Amount,Plaćanje Iznos,
Payment Term Name,Naziv termina plaćanja,
Due Date Based On,Due Date Based On,
Day(s) after invoice date,Dan (a) nakon datuma fakture,
Day(s) after the end of the invoice month,Dan (i) nakon završetka meseca fakture,
Month(s) after the end of the invoice month,Mesec (i) nakon kraja mjeseca fakture,
Credit Days,Kreditne Dani,
Credit Months,Kreditni meseci,
Allocate Payment Based On Payment Terms,Dodijelite plaćanje na osnovu uslova plaćanja,
"If this checkbox is checked, paid amount will be splitted and allocated as per the amounts in payment schedule against each payment term","Ako je ovo polje potvrđeno, uplaćeni iznos podijelit će se i rasporediti prema iznosima u rasporedu plaćanja prema svakom roku plaćanja",
Payment Terms Template Detail,Detail Template Template,
Closing Fiscal Year,Zatvaranje Fiskalna godina,
Closing Account Head,Zatvaranje računa šefa,
"The account head under Liability or Equity, in which Profit/Loss will be booked","Glava račun pod odgovornošću ili Equity, u kojoj će se rezervirati Dobit / Gubitak",
POS Customer Group,POS kupaca Grupa,
POS Field,POS polje,
POS Item Group,POS Stavka Group,
Company Address,Company Adresa,
Update Stock,Ažurirajte Stock,
Ignore Pricing Rule,Ignorirajte Cijene pravilo,
Applicable for Users,Primenljivo za korisnike,
Sales Invoice Payment,Prodaja fakture za plaćanje,
Item Groups,stavka grupe,
Only show Items from these Item Groups,Prikažite samo stavke iz ovih grupa predmeta,
Customer Groups,Customer grupe,
Only show Customer of these Customer Groups,Pokaži samo kupca ovih grupa kupaca,
Write Off Account,Napišite Off račun,
Write Off Cost Center,Otpis troška,
Account for Change Amount,Nalog za promjene Iznos,
Taxes and Charges,Porezi i naknade,
Apply Discount On,Nanesite popusta na,
POS Profile User,POS korisnik profila,
Apply On,Primjeni na,
Price or Product Discount,Cijena ili popust na proizvod,
Apply Rule On Item Code,Primijenite pravilo na kod predmeta,
Apply Rule On Item Group,Primijenite pravilo na grupu predmeta,
Apply Rule On Brand,Primjeni pravilo na marku,
Mixed Conditions,Mešani uslovi,
Conditions will be applied on all the selected items combined. ,Uvjeti će se primjenjivati na sve odabrane stavke zajedno.,
Is Cumulative,Je kumulativno,
Coupon Code Based,Na osnovu koda kupona,
Discount on Other Item,Popust na drugi artikl,
Apply Rule On Other,Primijenite Pravilo na ostalo,
Party Information,Informacije o zabavi,
Quantity and Amount,Količina i količina,
Min Qty,Min kol,
Max Qty,Max kol,
Min Amt,Min Amt,
Max Amt,Max Amt,
Period Settings,Podešavanja razdoblja,
Margin,Marža,
Margin Type,Margina Tip,
Margin Rate or Amount,Margina Rate ili iznos,
Price Discount Scheme,Shema popusta na cijene,
Rate or Discount,Stopa ili popust,
Discount Percentage,Postotak rabata,
Discount Amount,Iznos rabata,
For Price List,Za Cjeniku,
Product Discount Scheme,Shema popusta na proizvode,
Same Item,Ista stavka,
Free Item,Free Item,
Threshold for Suggestion,Prag za sugestiju,
System will notify to increase or decrease quantity or amount ,Sistem će obavijestiti da poveća ili smanji količinu ili količinu,
"Higher the number, higher the priority","Veći broj, veći prioritet",
Apply Multiple Pricing Rules,Primenite višestruka pravila cena,
Apply Discount on Rate,Primenite popust na rate,
Validate Applied Rule,Potvrdite primijenjeno pravilo,
Rule Description,Opis pravila,
Pricing Rule Help,Cijene Pravilo Pomoć,
Promotional Scheme Id,Id promotivne šeme,
Promotional Scheme,Promotivna šema,
Pricing Rule Brand,Marka pravila o cijenama,
Pricing Rule Detail,Detalj pravila o cijenama,
Child Docname,Ime deteta,
Rule Applied,Pravilo se primjenjuje,
Pricing Rule Item Code,Pravilo cijene Šifra predmeta,
Pricing Rule Item Group,Skupina pravila pravila o cijenama,
Price Discount Slabs,Ploče s popustom cijena,
Promotional Scheme Price Discount,Popust na promotivne šeme,
Product Discount Slabs,Ploče s popustom na proizvode,
Promotional Scheme Product Discount,Popust na promotivne šeme proizvoda,
Min Amount,Min. Iznos,
Max Amount,Maksimalni iznos,
Discount Type,Tip popusta,
ACC-PINV-.YYYY.-,ACC-PINV-.YYYY.-,
Tax Withholding Category,Kategorija za oduzimanje poreza,
Edit Posting Date and Time,Edit knjiženja datuma i vremena,
Is Paid,plaća,
Is Return (Debit Note),Je povratak (obaveštenje o zaduživanju),
Apply Tax Withholding Amount,Primijeniti iznos poreznog štednje,
Accounting Dimensions ,Računovodstvene dimenzije,
Supplier Invoice Details,Dobavljač Račun Detalji,
Supplier Invoice Date,Dobavljač Datum fakture,
Return Against Purchase Invoice,Vratiti protiv fakturi,
Select Supplier Address,Izaberite dobavljač adresa,
Contact Person,Kontakt osoba,
Select Shipping Address,Izaberite Dostava Adresa,
Currency and Price List,Valuta i cjenik,
Price List Currency,Cjenik valuta,
Price List Exchange Rate,Cjenik tečajna,
Set Accepted Warehouse,Postavite Prihvaćeno skladište,
Rejected Warehouse,Odbijen galerija,
Warehouse where you are maintaining stock of rejected items,Skladište gdje ste održavanju zaliha odbijenih stavki,
Raw Materials Supplied,Sirovine nabavlja,
Supplier Warehouse,Dobavljač galerija,
Pricing Rules,Pravila cijena,
Supplied Items,Isporučenog pribora,
Total (Company Currency),Ukupno (Company valuta),
Net Total (Company Currency),Neto Ukupno (Društvo valuta),
Total Net Weight,Ukupna neto težina,
Shipping Rule,Pravilo transporta,
Purchase Taxes and Charges Template,Kupiti poreza i naknada Template,
Purchase Taxes and Charges,Kupnja Porezi i naknade,
Tax Breakup,porez Raspad,
Taxes and Charges Calculation,Porezi i naknade Proračun,
Taxes and Charges Added (Company Currency),Porezi i naknade uvrštenja (Društvo valuta),
Taxes and Charges Deducted (Company Currency),Porezi i naknade Umanjenja (Društvo valuta),
Total Taxes and Charges (Company Currency),Ukupno Porezi i naknade (Društvo valuta),
Taxes and Charges Added,Porezi i naknade Dodano,
Taxes and Charges Deducted,Porezi i naknade oduzeti,
Total Taxes and Charges,Ukupno Porezi i naknade,
Additional Discount,Dodatni popust,
Apply Additional Discount On,Nanesite dodatni popust na,
Additional Discount Amount (Company Currency),Dodatni popust Iznos (Company valuta),
Additional Discount Percentage,Dodatni postotak popusta,
Additional Discount Amount,Dodatni iznos popusta,
Grand Total (Company Currency),Sveukupno (valuta tvrtke),
Rounding Adjustment (Company Currency),Prilagođavanje zaokruživanja (valuta kompanije),
Rounded Total (Company Currency),Zaobljeni Ukupno (Društvo valuta),
In Words (Company Currency),Riječima (valuta tvrtke),
Rounding Adjustment,Prilagođavanje zaokruživanja,
In Words,Riječima,
Total Advance,Ukupno predujma,
Disable Rounded Total,Ugasiti zaokruženi iznos,
Cash/Bank Account,Novac / bankovni račun,
Write Off Amount (Company Currency),Otpis Iznos (poduzeća Valuta),
Set Advances and Allocate (FIFO),Postavite napredak i dodelite (FIFO),
Get Advances Paid,Kreiraj avansno plaćanje,
Advances,Avansi,
Terms,Uvjeti,
Terms and Conditions1,Odredbe i Conditions1,
Group same items,Grupa iste stavke,
Print Language,print Jezik,
"Once set, this invoice will be on hold till the set date","Jednom podešen, ovaj račun će biti na čekanju do određenog datuma",
Credit To,Kreditne Da,
Party Account Currency,Party računa valuta,
Against Expense Account,Protiv Rashodi račun,
Inter Company Invoice Reference,Referenca interne kompanije,
Is Internal Supplier,Je interni snabdevač,
Start date of current invoice's period,Početak datum tekućeg razdoblja dostavnice,
End date of current invoice's period,Kraj datum tekućeg razdoblja dostavnice,
Update Auto Repeat Reference,Ažurirajte Auto Repeat Reference,
Purchase Invoice Advance,Narudzbine avans,
Purchase Invoice Item,Narudzbine stavki,
Quantity and Rate,Količina i stopa,
Received Qty,Pozicija Kol,
Accepted Qty,Prihvaćeno Količina,
Rejected Qty,odbijena Količina,
UOM Conversion Factor,UOM konverzijski faktor,
Discount on Price List Rate (%),Popust na cijenu List stopa (%),
Price List Rate (Company Currency),Cjenik stopa (Društvo valuta),
Rate ,Cijena,
Rate (Company Currency),Cijena (Valuta kompanije),
Amount (Company Currency),Iznos (valuta preduzeća),
Is Free Item,Je besplatna stavka,
Net Rate,Neto stopa,
Net Rate (Company Currency),Neto stopa (Company valuta),
Net Amount (Company Currency),Neto iznos (Company valuta),
Item Tax Amount Included in Value,Iznos poreza uključen u vrijednost,
Landed Cost Voucher Amount,Sleteo Cost vaučera Iznos,
Raw Materials Supplied Cost,Sirovine Isporuka Troškovi,
Accepted Warehouse,Prihvaćeno skladište,
Serial No,Serijski br,
Rejected Serial No,Odbijen Serijski br,
Expense Head,Rashodi voditelj,
Is Fixed Asset,Fiksni Asset,
Asset Location,Lokacija imovine,
Deferred Expense,Odloženi troškovi,
Deferred Expense Account,Odloženi račun za troškove,
Service Stop Date,Datum zaustavljanja usluge,
Enable Deferred Expense,Omogućite odloženi trošak,
Service Start Date,Datum početka usluge,
Service End Date,Datum završetka usluge,
Allow Zero Valuation Rate,Dozvolite Zero Vrednovanje Rate,
Item Tax Rate,Poreska stopa artikla,
Tax detail table fetched from item master as a string and stored in this field.\nUsed for Taxes and Charges,Porez detalj stol učitani iz stavka master kao string i pohranjeni u ovoj oblasti.\n Koristi se za poreza i naknada,
Purchase Order Item,Narudžbenica predmet,
Purchase Receipt Detail,Detalji potvrde o kupnji,
Item Weight Details,Detaljna težina stavke,
Weight Per Unit,Težina po jedinici,
Total Weight,Ukupna tezina,
Weight UOM,Težina UOM,
Page Break,Prijelom stranice,
Consider Tax or Charge for,Razmislite poreza ili pristojbi za,
Valuation and Total,Vrednovanje i Total,
Valuation,Procjena,
Add or Deduct,Zbrajanje ili oduzimanje,
Deduct,Odbiti,
On Previous Row Amount,Na prethodnu Row visini,
On Previous Row Total,Na prethodni redak Ukupno,
On Item Quantity,Na Količina predmeta,
Reference Row #,Reference Row #,
Is this Tax included in Basic Rate?,Je li ovo pristojba uključena u osnovne stope?,
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Ako je označeno, iznos poreza će se smatrati već uključena u Print Rate / Ispis Iznos",
Account Head,Zaglavlje konta,
Tax Amount After Discount Amount,Iznos poreza Nakon iznosa popusta,
Item Wise Tax Detail ,Detalj poreza na mudar predmet,
"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.","Standard poreza predložak koji se može primijeniti na sve kupovnih transakcija. Ovaj predložak može sadržavati popis poreskih glava i drugih rashoda glave kao što su ""Shipping"", ""osiguranje"", ""Rukovanje"" itd \n\n #### Napomena \n\n Stopa poreza te definirati ovdje će biti standardna stopa poreza za sve ** Predmeti **. Ako postoje ** ** Predmeti koji imaju različite stope, oni moraju biti dodan u ** Stavka poreza na stolu ** u ** ** Stavka master.\n\n #### Opis Kolumne \n\n 1. Obračun Tip: \n - To može biti na ** Neto Ukupno ** (to je zbroj osnovnog iznosa).\n - ** Na Prethodna Row Ukupan / Iznos ** (za kumulativni poreza ili naknada). Ako odaberete ovu opciju, porez će se primjenjivati kao postotak prethodnog reda (u tabeli poreza) iznos ili ukupno.\n - ** Stvarna ** (kao što je spomenuto).\n 2. Račun Head: The račun knjigu pod kojima porez će biti kažnjen \n 3. Trošak Center: Ako porez / zadužen je prihod (kao što je shipping) ili rashod treba da se rezervirati protiv troška.\n 4. Opis: Opis poreza (koje će se štampati u fakturama / navodnika).\n 5. Rate: Stopa poreza.\n 6. Iznos: Iznos PDV-a.\n 7. Ukupno: Kumulativni ukupno do ove tačke.\n 8. Unesite Row: Ako na osnovu ""Prethodna Row Ukupno"" možete odabrati broj reda koji se mogu uzeti kao osnova za ovaj proračun (default je prethodnog reda).\n 9. Razmislite poreza ili naknada za: U ovom dijelu možete odrediti ako poreski / zadužen je samo za vrednovanje (nije dio od ukupnog broja), ili samo za ukupno (ne dodaje vrijednost u stavku) ili oboje.\n 10. Dodavanje ili Oduzeti: Bilo da želite dodati ili oduzeti porez.",
ACC-SINV-.YYYY.-,ACC-SINV-.YYYY.-,
Include Payment (POS),Uključuju plaćanje (POS),
Offline POS Name,Offline POS Ime,
Is Return (Credit Note),Je povratak (kreditna beleška),
Return Against Sales Invoice,Vratiti Protiv Sales fakture,
Update Billed Amount in Sales Order,Ažurirajte naplaćeni iznos u prodajnom nalogu,
Customer PO Details,Kupac PO Detalji,
Customer's Purchase Order,Narudžbenica kupca,
Customer's Purchase Order Date,Kupca narudžbenice Datum,
Customer Address,Kupac Adresa,
Shipping Address Name,Dostava adresa Ime,
Company Address Name,Kompanija adresa Ime,
Rate at which Customer Currency is converted to customer's base currency,Stopa po kojoj Kupac valuta se pretvaraju u kupca osnovne valute,
Rate at which Price list currency is converted to customer's base currency,Stopa po kojoj Cjenik valute se pretvaraju u kupca osnovne valute,
Set Source Warehouse,Podesite Source Warehouse,
Packing List,Popis pakiranja,
Packed Items,Pakirano Predmeti,
Product Bundle Help,Proizvod Bundle Pomoć,
Time Sheet List,Time Sheet List,
Time Sheets,Time listovi,
Total Billing Amount,Ukupan iznos naplate,
Sales Taxes and Charges Template,Prodaja poreza i naknada Template,
Sales Taxes and Charges,Prodaja Porezi i naknade,
Loyalty Points Redemption,Povlačenje lojalnosti,
Redeem Loyalty Points,Iskoristite lojalnostne tačke,
Redemption Account,Račun za otkup,
Redemption Cost Center,Centar za isplatu troškova,
In Words will be visible once you save the Sales Invoice.,U riječi će biti vidljiv nakon što spremite prodaje fakture.,
Allocate Advances Automatically (FIFO),Dodjeljivanje unaprijed automatski (FIFO),
Get Advances Received,Kreiraj avansno primanje,
Base Change Amount (Company Currency),Base Promijeni Iznos (Company Valuta),
Write Off Outstanding Amount,Otpisati preostali iznos,
Terms and Conditions Details,Uvjeti Detalji,
Is Internal Customer,Je interni korisnik,
Is Discounted,Se snižava,
Unpaid and Discounted,Neplaćeno i sniženo,
Overdue and Discounted,Zakašnjeli i sniženi,
Accounting Details,Računovodstvo Detalji,
Debit To,Rashodi za,
Is Opening Entry,Je Otvaranje unos,
C-Form Applicable,C-obrascu,
Commission Rate (%),Komisija stopa (%),
Sales Team1,Prodaja Team1,
Against Income Account,Protiv računu dohotka,
Sales Invoice Advance,Predujam prodajnog računa,
Advance amount,Iznos avansa,
Sales Invoice Item,Stavka fakture prodaje,
Customer's Item Code,Kupca Stavka Šifra,
Brand Name,Naziv brenda,
Qty as per Stock UOM,Količina po burzi UOM,
Discount and Margin,Popust i Margin,
Rate With Margin,Stopu sa margina,
Discount (%) on Price List Rate with Margin,Popust (%) na Cjenovnik objekta sa margina,
Rate With Margin (Company Currency),Rate With Margin (Valuta kompanije),
Delivered By Supplier,Isporučuje dobavljač,
Deferred Revenue,Odloženi prihodi,
Deferred Revenue Account,Odgođeni račun za prihode,
Enable Deferred Revenue,Omogućite odloženi prihod,
Stock Details,Stock Detalji,
Customer Warehouse (Optional),Customer Warehouse (Opcionalno),
Available Batch Qty at Warehouse,Dostupno Batch Količina na Skladište,
Available Qty at Warehouse,Dostupna količina na skladištu,
Delivery Note Item,Stavka otpremnice,
Base Amount (Company Currency),Base Iznos (Company Valuta),
Sales Invoice Timesheet,Prodaja Račun Timesheet,
Time Sheet,Time Sheet,
Billing Hours,Billing Hours,
Timesheet Detail,Timesheet Detail,
Tax Amount After Discount Amount (Company Currency),Iznos PDV-a Nakon Popust Iznos (Company valuta),
Item Wise Tax Detail,Stavka Wise Porezna Detalj,
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.","Standard poreza predložak koji se može primijeniti na sve poslove prodaje. Ovaj predložak može sadržavati popis poreskih glava i ostali rashodi / prihodi glave kao što su ""Shipping"", ""osiguranje"", ""Rukovanje"" itd \n\n #### Napomena \n\n Stopa poreza te definirati ovdje će biti standardna stopa poreza za sve ** Predmeti **. Ako postoje ** ** Predmeti koji imaju različite stope, oni moraju biti dodan u ** Stavka poreza na stolu ** u ** ** Stavka master.\n\n #### Opis Kolumne \n\n 1. Obračun Tip: \n - To može biti na ** Neto Ukupno ** (to je zbroj osnovnog iznosa).\n - ** Na Prethodna Row Ukupan / Iznos ** (za kumulativni poreza ili naknada). Ako odaberete ovu opciju, porez će se primjenjivati kao postotak prethodnog reda (u tabeli poreza) iznos ili ukupno.\n - ** Stvarna ** (kao što je spomenuto).\n 2. Račun Head: The račun knjigu pod kojima porez će biti kažnjen \n 3. Trošak Center: Ako porez / zadužen je prihod (kao što je shipping) ili rashod treba da se rezervirati protiv troška.\n 4. Opis: Opis poreza (koje će se štampati u fakturama / navodnika).\n 5. Rate: Stopa poreza.\n 6. Iznos: Iznos PDV-a.\n 7. Ukupno: Kumulativni ukupno do ove tačke.\n 8. Unesite Row: Ako na osnovu ""Prethodna Row Ukupno"" možete odabrati broj reda koji se mogu uzeti kao osnova za ovaj proračun (default je prethodnog reda).\n 9. Je li ovo pristojba uključena u Basic Rate ?: Ako označite ovu, to znači da ovaj porez neće biti prikazan ispod stola stavku, ali će biti uključeni u Basic Rate na glavnom stavku stola. To je korisno u kojoj želite dati cijena stana (uključujući sve poreze) cijene kupcima.",
* Will be calculated in the transaction.,* Hoće li biti izračunata u transakciji.,
From No,Od br,
To No,Da ne,
Is Company,Je kompanija,
Current State,Trenutna drzava,
Purchased,Kupljeno,
From Shareholder,Od dioničara,
From Folio No,Od Folio No,
To Shareholder,Za dioničara,
To Folio No,Za Folio No,
Equity/Liability Account,Račun kapitala / obaveza,
Asset Account,Račun imovine,
(including),(uključujući),
ACC-SH-.YYYY.-,ACC-SH-YYYY.-,
Folio no.,Folio br.,
Address and Contacts,Adresa i kontakti,
Contact List,Lista kontakata,
Hidden list maintaining the list of contacts linked to Shareholder,Skrivena lista održavajući listu kontakata povezanih sa akcionarima,
Specify conditions to calculate shipping amount,Odredite uvjete za izračunavanje iznosa shipping,
Shipping Rule Label,Naziv pravila transporta,
example: Next Day Shipping,Primjer: Sljedeći dan Dostava,
Shipping Rule Type,Tip pravila isporuke,
Shipping Account,Konto transporta,
Calculate Based On,Izračun zasnovan na,
Fixed,Fiksna,
Net Weight,Neto težina,
Shipping Amount,Iznos transporta,
Shipping Rule Conditions,Uslovi pravila transporta,
Restrict to Countries,Ograničiti zemlje,
Valid for Countries,Vrijedi za zemlje,
Shipping Rule Condition,Uslov pravila transporta,
A condition for a Shipping Rule,A uvjet za Shipping Pravilo,
From Value,Od Vrijednost,
To Value,Za vrijednost,
Shipping Rule Country,Dostava Pravilo Country,
Subscription Period,Period pretplate,
Subscription Start Date,Datum početka pretplate,
Cancelation Date,Datum otkazivanja,
Trial Period Start Date,Datum početka probnog perioda,
Trial Period End Date,Datum završetka probnog perioda,
Current Invoice Start Date,Trenutni datum početka fakture,
Current Invoice End Date,Trenutni datum završetka računa,
Days Until Due,Dani do dospijeća,
Number of days that the subscriber has to pay invoices generated by this subscription,Broj dana kada pretplatnik mora platiti fakture koje generiše ova pretplata,
Cancel At End Of Period,Otkaži na kraju perioda,
Generate Invoice At Beginning Of Period,Generirajte fakturu na početku perioda,
Plans,Planovi,
Discounts,Popusti,
Additional DIscount Percentage,Dodatni popust Procenat,
Additional DIscount Amount,Dodatni popust Iznos,
Subscription Invoice,Pretplata faktura,
Subscription Plan,Plan pretplate,
Cost,Troškovi,
Billing Interval,Interval zaračunavanja,
Billing Interval Count,Interval broja obračuna,
"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","Broj intervala za intervalno polje npr. Ako je Interval &quot;Dani&quot; i broj intervala obračuna je 3, fakture će biti generirane svakih 3 dana",
Payment Plan,Plan placanja,
Subscription Plan Detail,Detalji pretplate,
Plan,Plan,
Subscription Settings,Podešavanja pretplate,
Grace Period,Grace Period,
Number of days after invoice date has elapsed before canceling subscription or marking subscription as unpaid,Broj dana od dana kada je faktura protekla prije otkazivanja pretplate ili obilježavanja pretplate kao neplaćenog,
Prorate,Prorate,
Tax Rule,Porez pravilo,
Tax Type,Vrste poreza,
Use for Shopping Cart,Koristiti za Košarica,
Billing City,Billing Grad,
Billing County,Billing županije,
Billing State,State billing,
Billing Zipcode,Zipcode za naplatu,
Billing Country,Billing Country,
Shipping City,Dostava City,
Shipping County,Dostava županije,
Shipping State,State dostava,
Shipping Zipcode,Isporuka Zipcode,
Shipping Country,Dostava Country,
Tax Withholding Account,Porez na odbitak,
Tax Withholding Rates,Poreske stope odbijanja,
Rates,Cijene,
Tax Withholding Rate,Stopa zadržavanja poreza,
Single Transaction Threshold,Pojedinačni transakcioni prag,
Cumulative Transaction Threshold,Kumulativni prag transakcije,
Agriculture Analysis Criteria,Kriterijumi za analizu poljoprivrede,
Linked Doctype,Linked Doctype,
Water Analysis,Analiza vode,
Soil Analysis,Analiza tla,
Plant Analysis,Analiza biljaka,
Fertilizer,Đubrivo,
Soil Texture,Tekstura tla,
Weather,Vrijeme,
Agriculture Manager,Poljoprivredni menadžer,
Agriculture User,Korisnik poljoprivrede,
Agriculture Task,Poljoprivreda zadatak,
Task Name,Task Name,
Start Day,Početak dana,
End Day,Krajnji dan,
Holiday Management,Holiday Management,
Ignore holidays,Ignoriši praznike,
Previous Business Day,Prethodni radni dan,
Next Business Day,Sledeći radni dan,
Urgent,Hitan,
Crop,Rezati,
Crop Name,Naziv žetve,
Scientific Name,Naučno ime,
"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.. ","Možete definisati sve zadatke koje je potrebno izvršiti za ovu žetvu ovdje. Dnevno polje se koristi da se pomene dan na koji se zadatak treba izvršiti, 1 je 1. dan itd.",
Crop Spacing,Rastojanje usjeva,
Crop Spacing UOM,Crop Spacing UOM,
Row Spacing,Razmak redova,
Row Spacing UOM,Razmak redova UOM,
Perennial,Višegodišnje,
Biennial,Bijenale,
Planting UOM,Sadnja UOM,
Planting Area,Sala za sadnju,
Yield UOM,Primarni UOM,
Materials Required,Potrebni materijali,
Produced Items,Proizvedene stavke,
Produce,Proizvesti,
Byproducts,Podbrojevi,
Linked Location,Povezana lokacija,
A link to all the Locations in which the Crop is growing,Veza sa svim lokacijama u kojima se Crop raste,
This will be day 1 of the crop cycle,Ovo će biti dan 1 ciklusa usjeva,
ISO 8601 standard,ISO 8601 standard,
Cycle Type,Tip ciklusa,
Less than a year,Manje od godinu dana,
The minimum length between each plant in the field for optimum growth,Minimalna dužina između svake biljke u polju za optimalan rast,
The minimum distance between rows of plants for optimum growth,Minimalno rastojanje između redova biljaka za optimalan rast,
Detected Diseases,Otkrivene bolesti,
List of diseases detected on the field. When selected it'll automatically add a list of tasks to deal with the disease ,"Spisak otkrivenih bolesti na terenu. Kada je izabran, automatski će dodati listu zadataka koji će se baviti bolesti",
Detected Disease,Detektovana bolest,
LInked Analysis,LInked Analysis,
Disease,Bolest,
Tasks Created,Kreirani zadaci,
Common Name,Zajedničko ime,
Treatment Task,Tretman zadataka,
Treatment Period,Period lečenja,
Fertilizer Name,Ime đubriva,
Density (if liquid),Gustina (ako je tečnost),
Fertilizer Contents,Sadržaj đubriva,
Fertilizer Content,Sadržaj đubriva,
Linked Plant Analysis,Analiza povezanih biljaka,
Linked Soil Analysis,Linked soil analysis,
Linked Soil Texture,Linked Soil Texture,
Collection Datetime,Kolekcija Datetime,
Laboratory Testing Datetime,Laboratorijsko ispitivanje Datetime,
Result Datetime,Result Datetime,
Plant Analysis Criterias,Kriterijumi za analizu biljaka,
Plant Analysis Criteria,Kriterijumi za analizu biljaka,
Minimum Permissible Value,Minimalna dozvoljena vrijednost,
Maximum Permissible Value,Maksimalna dozvoljena vrijednost,
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,Kriterijumi za analizu zemljišta,
Soil Analysis Criteria,Kriterijumi za analizu zemljišta,
Soil Type,Vrsta zemljišta,
Loamy Sand,Loamy Sand,
Sandy Loam,Sandy Loam,
Loam,Loam,
Silt Loam,Silt Loam,
Sandy Clay Loam,Sandy Clay Loam,
Clay Loam,Clay Loam,
Silty Clay Loam,Silty Clay Loam,
Sandy Clay,Sandy Clay,
Silty Clay,Silty Clay,
Clay Composition (%),Glina sastav (%),
Sand Composition (%),Kompozicija peska (%),
Silt Composition (%),Silt sastav (%),
Ternary Plot,Ternary plot,
Soil Texture Criteria,Kriterijumi za teksturu tla,
Type of Sample,Tip uzorka,
Container,Kontejner,
Origin,Poreklo,
Collection Temperature ,Temperatura kolekcije,
Storage Temperature,Temperatura skladištenja,
Appearance,Izgled,
Person Responsible,Odgovorna osoba,
Water Analysis Criteria,Kriterijumi za analizu vode,
Weather Parameter,Vremenski parametar,
ACC-ASS-.YYYY.-,ACC-ASS-YYYY.-,
Asset Owner,Vlasnik imovine,
Asset Owner Company,Vlasnička kompanija,
Custodian,Skrbnik,
Disposal Date,odlaganje Datum,
Journal Entry for Scrap,Journal Entry za otpad,
Available-for-use Date,Datum dostupan za upotrebu,
Calculate Depreciation,Izračunajte amortizaciju,
Allow Monthly Depreciation,Dopustite mjesečnu amortizaciju,
Number of Depreciations Booked,Broj Amortizacija Booked,
Finance Books,Finansijske knjige,
Straight Line,Duž,
Double Declining Balance,Double degresivne,
Manual,priručnik,
Value After Depreciation,Vrijednost Nakon Amortizacija,
Total Number of Depreciations,Ukupan broj Amortizacija,
Frequency of Depreciation (Months),Učestalost amortizacije (mjeseci),
Next Depreciation Date,Sljedeća Amortizacija Datum,
Depreciation Schedule,Amortizacija Raspored,
Depreciation Schedules,Amortizacija rasporedi,
Insurance details,Detalji osiguranja,
Policy number,Broj police,
Insurer,Osiguravač,
Insured value,Osigurana vrijednost,
Insurance Start Date,Datum početka osiguranja,
Insurance End Date,Krajnji datum osiguranja,
Comprehensive Insurance,Sveobuhvatno osiguranje,
Maintenance Required,Potrebno održavanje,
Check if Asset requires Preventive Maintenance or Calibration,Proverite da li imovina zahteva preventivno održavanje ili kalibraciju,
Booked Fixed Asset,Rezervisana osnovna sredstva,
Purchase Receipt Amount,Iznos kupoprodajnog iznosa,
Default Finance Book,Osnovna finansijska knjiga,
Quality Manager,Quality Manager,
Asset Category Name,Asset Ime kategorije,
Depreciation Options,Opcije amortizacije,
Enable Capital Work in Progress Accounting,Omogućite kapitalni rad u računovodstvu u toku,
Finance Book Detail,Knjiga finansija Detail,
Asset Category Account,Asset Kategorija računa,
Fixed Asset Account,Osnovnih sredstava računa,
Accumulated Depreciation Account,Ispravka vrijednosti računa,
Depreciation Expense Account,Troškovi amortizacije računa,
Capital Work In Progress Account,Kapitalni rad je u toku,
Asset Finance Book,Asset Finance Book,
Written Down Value,Pisanje vrednosti,
Expected Value After Useful Life,Očekivana vrijednost Nakon Korisni Life,
Rate of Depreciation,Stopa amortizacije,
In Percentage,U procentima,
Maintenance Team,Tim za održavanje,
Maintenance Manager Name,Ime menadžera održavanja,
Maintenance Tasks,Zadaci održavanja,
Manufacturing User,Proizvodnja korisnika,
Asset Maintenance Log,Dnevnik o održavanju imovine,
ACC-AML-.YYYY.-,ACC-AML-.YYYY.-,
Maintenance Type,Održavanje Tip,
Maintenance Status,Održavanje statusa,
Planned,Planirano,
Has Certificate ,Ima certifikat,
Certificate,Certifikat,
Actions performed,Izvršene akcije,
Asset Maintenance Task,Zadatak održavanja sredstava,
Maintenance Task,Zadatak održavanja,
Preventive Maintenance,Preventivno održavanje,
Calibration,Kalibracija,
2 Yearly,2 Yearly,
Certificate Required,Sertifikat je potreban,
Assign to Name,Dodijeli imenu,
Next Due Date,Sljedeći datum roka,
Last Completion Date,Zadnji datum završetka,
Asset Maintenance Team,Tim za održavanje imovine,
Maintenance Team Name,Naziv tima za održavanje,
Maintenance Team Members,Članovi tima za održavanje,
Purpose,Svrha,
Stock Manager,Stock Manager,
Asset Movement Item,Stavka kretanja imovine,
Source Location,Izvor Lokacija,
From Employee,Od zaposlenika,
Target Location,Ciljna lokacija,
To Employee,Za zaposlene,
Asset Repair,Popravka imovine,
ACC-ASR-.YYYY.-,ACC-ASR-.YYYY.-,
Failure Date,Datum otkaza,
Assign To Name,Dodeli ime,
Repair Status,Status popravke,
Error Description,Opis greške,
Downtime,Zaustavljanje,
Repair Cost,Troškovi popravki,
Manufacturing Manager,Proizvodnja Manager,
Current Asset Value,Trenutna vrednost aktive,
New Asset Value,Nova vrijednost imovine,
Make Depreciation Entry,Make Amortizacija Entry,
Finance Book Id,Id Book of Finance,
Location Name,Ime lokacije,
Parent Location,Lokacija roditelja,
Is Container,Je kontejner,
Check if it is a hydroponic unit,Proverite da li je to hidroponska jedinica,
Location Details,Detalji o lokaciji,
Latitude,Latitude,
Longitude,Dužina,
Area,Područje,
Area UOM,Područje UOM,
Tree Details,Tree Detalji,
Maintenance Team Member,Član tima za održavanje,
Team Member,Član tima,
Maintenance Role,Uloga održavanja,
Buying Settings,Podešavanja nabavke,
Settings for Buying Module,Postavke za kupovinu modul,
Supplier Naming By,Dobavljač nazivanje,
Default Supplier Group,Podrazumevana grupa dobavljača,
Default Buying Price List,Zadani cjenik kupnje,
Backflush Raw Materials of Subcontract Based On,Backflush sirovine od podizvođača na bazi,
Material Transferred for Subcontract,Preneseni materijal za podugovaranje,
Over Transfer Allowance (%),Dodatak za prebacivanje (%),
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.,"Postotak koji vam je dozvoljen da prenesete više u odnosu na naručenu količinu. Na primjer: Ako ste naručili 100 jedinica. a vaš dodatak iznosi 10%, tada vam je dozvoljeno prenijeti 110 jedinica.",
PUR-ORD-.YYYY.-,PUR-ORD-YYYY.-,
Get Items from Open Material Requests,Saznajte Predmeti od Open materijala Zahtjevi,
Fetch items based on Default Supplier.,Dohvatite stavke na osnovu zadanog dobavljača.,
Required By,Potrebna Do,
Order Confirmation No,Potvrda o porudžbini br,
Order Confirmation Date,Datum potvrđivanja porudžbine,
Customer Mobile No,Mobilni broj kupca,
Customer Contact Email,Email kontakta kupca,
Set Target Warehouse,Postavite Target Warehouse,
Sets 'Warehouse' in each row of the Items table.,Postavlja &#39;Skladište&#39; u svaki red tabele Predmeti.,
Supply Raw Materials,Supply sirovine,
Purchase Order Pricing Rule,Pravilo o cenama narudžbe,
Set Reserve Warehouse,Postavite rezervnu magacinu,
In Words will be visible once you save the Purchase Order.,U riječi će biti vidljiv nakon što spremite narudžbenice.,
Advance Paid,Advance Paid,
Tracking,Praćenje,
% Billed,Naplaćeno%,
% Received,% Primljeno,
Ref SQ,Ref. SQ,
Inter Company Order Reference,Referentna narudžba kompanije,
Supplier Part Number,Dobavljač Broj dijela,
Billed Amt,Naplaćeni izn,
Warehouse and Reference,Skladište i upute,
To be delivered to customer,Dostaviti kupcu,
Material Request Item,Materijal Zahtjev artikla,
Supplier Quotation Item,Dobavljač ponudu artikla,
Against Blanket Order,Protiv pokrivača,
Blanket Order,Narudžbina odeće,
Blanket Order Rate,Stopa porudžbine odeće,
Returned Qty,Vraćeni Količina,
Purchase Order Item Supplied,Narudžbenica artikla Isporuka,
BOM Detail No,BOM detalji - broj,
Stock Uom,Kataloški UOM,
Raw Material Item Code,Sirovine Stavka Šifra,
Supplied Qty,Isporučeni Količina,
Purchase Receipt Item Supplied,Kupnja Prijem artikla Isporuka,
Current Stock,Trenutni Stock,
PUR-RFQ-.YYYY.-,PUR-RFQ-.YYYY.-,
For individual supplier,Za pojedinačne dobavljač,
Link to Material Requests,Link do zahtjeva za materijalom,
Message for Supplier,Poruka za dobavljača,
Request for Quotation Item,Zahtjev za ponudu artikla,
Required Date,Potrebna Datum,
Request for Quotation Supplier,Zahtjev za ponudu dobavljač,
Send Email,Pošaljite e-mail,
Quote Status,Quote Status,
Download PDF,Preuzmi PDF,
Supplier of Goods or Services.,Dobavljač robe ili usluga.,
Name and Type,Naziv i tip,
SUP-.YYYY.-,SUP-.YYYY.-,
Default Bank Account,Zadani bankovni račun,
Is Transporter,Je transporter,
Represents Company,Predstavlja kompaniju,
Supplier Type,Dobavljač Tip,
Allow Purchase Invoice Creation Without Purchase Order,Dozvoli stvaranje računa za kupovinu bez naloga za kupovinu,
Allow Purchase Invoice Creation Without Purchase Receipt,Dozvoli stvaranje računa za kupovinu bez potvrde o kupovini,
Warn RFQs,Upozorite RFQs,
Warn POs,Upozorite PO,
Prevent RFQs,Sprečite RFQs,
Prevent POs,Sprečite PO,
Billing Currency,Valuta plaćanja,
Default Payment Terms Template,Podrazumevani obrazac za plaćanje,
Block Supplier,Blok isporučilac,
Hold Type,Tip držanja,
Leave blank if the Supplier is blocked indefinitely,Ostavite prazno ako je Dobavljač blokiran na neodređeno vreme,
Default Payable Accounts,Uobičajeno Računi dobavljača,
Mention if non-standard payable account,Navesti ukoliko nestandardnog plaća račun,
Default Tax Withholding Config,Podrazumevana poreska obaveza zadržavanja poreza,
Supplier Details,Dobavljač Detalji,
Statutory info and other general information about your Supplier,Zakonska info i druge opće informacije o vašem Dobavljaču,
PUR-SQTN-.YYYY.-,PUR-SQTN-YYYY.-,
Supplier Address,Dobavljač Adresa,
Link to material requests,Link za materijal zahtjeva,
Rounding Adjustment (Company Currency,Prilagođavanje zaokruživanja (valuta kompanije,
Auto Repeat Section,Auto Repeat Odjeljak,
Is Subcontracted,Je podugovarati,
Lead Time in days,Potencijalni kupac u danima,
Supplier Score,Ocjena dobavljača,
Indicator Color,Boja boje,
Evaluation Period,Period evaluacije,
Per Week,Po tjednu,
Per Month,Mjesečno,
Per Year,Godišnje,
Scoring Setup,Podešavanje bodova,
Weighting Function,Funkcija ponderiranja,
"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","Može se koristiti varijable Scorecard, kao i: {total_score} (ukupna ocjena iz tog perioda), {period_number} (broj perioda za današnji dan)",
Scoring Standings,Tabelarni stavovi,
Criteria Setup,Postavljanje kriterijuma,
Load All Criteria,Učitaj sve kriterije,
Scoring Criteria,Kriteriji bodovanja,
Scorecard Actions,Action Scorecard,
Warn for new Request for Quotations,Upozorite na novi zahtev za citate,
Warn for new Purchase Orders,Upozoriti na nova narudžbina,
Notify Supplier,Obavijestiti dobavljača,
Notify Employee,Obavesti zaposlenika,
Supplier Scorecard Criteria,Kriterijumi za ocenjivanje dobavljača,
Criteria Name,Ime kriterijuma,
Max Score,Max Score,
Criteria Formula,Kriterijum Formula,
Criteria Weight,Kriterij Težina,
Supplier Scorecard Period,Period perioda ocenjivanja dobavljača,
PU-SSP-.YYYY.-,PU-SSP-YYYY.-,
Period Score,Ocena perioda,
Calculations,Izračunavanje,
Criteria,Kriterijumi,
Variables,Varijable,
Supplier Scorecard Setup,Podešavanje Scorecard-a,
Supplier Scorecard Scoring Criteria,Kriterijumi bodovanja rezultata ocenjivanja dobavljača,
Score,skor,
Supplier Scorecard Scoring Standing,Postupak Scorecard Scoreing Standing,
Standing Name,Stalno ime,
Purple,Ljubičasta,
Yellow,Žuta,
Orange,Narandžasta,
Min Grade,Min razred,
Max Grade,Max Grade,
Warn Purchase Orders,Upozoravajte narudžbenice,
Prevent Purchase Orders,Sprečite kupovne naloge,
Employee ,Radnik,
Supplier Scorecard Scoring Variable,Dobavljač Scorecard Scoring Variable,
Variable Name,Ime promenljive,
Parameter Name,Ime parametra,
Supplier Scorecard Standing,Standing Scorecard Standing,
Notify Other,Obavesti drugu,
Supplier Scorecard Variable,Varijabilni pokazatelj dobavljača,
Call Log,Spisak poziva,
Received By,Primio,
Caller Information,Informacije o pozivaocu,
Contact Name,Kontakt ime,
Lead ,Olovo,
Lead Name,Ime Lead-a,
Ringing,Zvuči,
Missed,Propušteno,
Call Duration in seconds,Trajanje poziva u sekundi,
Recording URL,URL za snimanje,
Communication Medium,Srednja komunikacija,
Communication Medium Type,Srednja komunikacija,
Voice,Glas,
Catch All,Catch All,
"If there is no assigned timeslot, then communication will be handled by this group","Ako nema dodeljenog vremenskog intervala, komunikacija će upravljati ovom grupom",
Timeslots,Timeslots,
Communication Medium Timeslot,Srednja komunikacija za vreme komunikacije,
Employee Group,Employee Group,
Appointment,Imenovanje,
Scheduled Time,Zakazano vreme,
Unverified,Neprovereno,
Customer Details,Korisnički podaci,
Phone Number,Telefonski broj,
Skype ID,Skype ID,
Linked Documents,Povezani dokumenti,
Appointment With,Sastanak sa,
Calendar Event,Kalendar događaja,
Appointment Booking Settings,Podešavanja rezervacije termina,
Enable Appointment Scheduling,Omogući zakazivanje termina,
Agent Details,Detalji o agentu,
Availability Of Slots,Dostupnost Slotova,
Number of Concurrent Appointments,Broj istodobnih imenovanja,
Agents,Agenti,
Appointment Details,Detalji sastanka,
Appointment Duration (In Minutes),Trajanje sastanka (u nekoliko minuta),
Notify Via Email,Obavijesti putem e-pošte,
Notify customer and agent via email on the day of the appointment.,Obavijestite kupca i agenta putem e-maila na dan sastanka.,
Number of days appointments can be booked in advance,Broj dana termina može se unaprijed rezervirati,
Success Settings,Postavke uspjeha,
Success Redirect URL,URL za preusmeravanje uspeha,
"Leave blank for home.\nThis is relative to site URL, for example ""about"" will redirect to ""https://yoursitename.com/about""","Ostavite prazno kod kuće. Ovo se odnosi na URL stranice, na primjer, &quot;about&quot; će se preusmjeriti na &quot;https://yoursitename.com/about&quot;",
Appointment Booking Slots,Slotovi za rezervaciju termina,
Day Of Week,Dan u nedelji,
From Time ,S vremena,
Campaign Email Schedule,Raspored e-pošte kampanje,
Send After (days),Pošaljite nakon (dana),
Signed,Potpisano,
Party User,Party User,
Unsigned,Unsigned,
Fulfilment Status,Status ispune,
N/A,N / A,
Unfulfilled,Neispunjeno,
Partially Fulfilled,Delimično ispunjeno,
Fulfilled,Ispunjeno,
Lapsed,Propušteno,
Contract Period,Period ugovora,
Signee Details,Signee Detalji,
Signee,Signee,
Signed On,Signed On,
Contract Details,Detalji ugovora,
Contract Template,Template Template,
Contract Terms,Uslovi ugovora,
Fulfilment Details,Ispunjavanje Detalji,
Requires Fulfilment,Zahteva ispunjenje,
Fulfilment Deadline,Rok ispunjenja,
Fulfilment Terms,Uslovi ispunjenja,
Contract Fulfilment Checklist,Kontrolna lista Ispunjavanja ugovora,
Requirement,Zahtev,
Contract Terms and Conditions,Uslovi i uslovi ugovora,
Fulfilment Terms and Conditions,Uslovi ispunjavanja uslova,
Contract Template Fulfilment Terms,Uslovi ispunjavanja obrasca ugovora,
Email Campaign,Kampanja e-pošte,
Email Campaign For ,Kampanja e-pošte za,
Lead is an Organization,Olovo je organizacija,
CRM-LEAD-.YYYY.-,CRM-LEAD-.YYYY.-,
Person Name,Ime osobe,
Lost Quotation,Lost Ponuda,
Interested,Zainteresovan,
Converted,Pretvoreno,
Do Not Contact,Ne kontaktirati,
From Customer,Od kupca,
Campaign Name,Naziv kampanje,
Follow Up,Pratite gore,
Next Contact By,Sledeci put kontaktirace ga,
Next Contact Date,Datum sledeceg kontaktiranja,
Ends On,Završava se,
Address & Contact,Adresa i kontakt,
Mobile No.,Mobitel broj,
Lead Type,Tip potencijalnog kupca,
Channel Partner,Partner iz prodajnog kanala,
Consultant,Konsultant,
Market Segment,Tržišni segment,
Industry,Industrija,
Request Type,Zahtjev Tip,
Product Enquiry,Na upit,
Request for Information,Zahtjev za informacije,
Suggestions,Prijedlozi,
Blog Subscriber,Blog pretplatnik,
LinkedIn Settings,Postavke LinkedIn-a,
Company ID,ID kompanije,
OAuth Credentials,OAuth akreditivi,
Consumer Key,Potrošački ključ,
Consumer Secret,Potrošačka tajna,
User Details,Detalji o korisniku,
Person URN,Osoba URN,
Session Status,Status sesije,
Lost Reason Detail,Detalj izgubljenog razloga,
Opportunity Lost Reason,Prilika izgubljen razlog,
Potential Sales Deal,Potencijalni Sales Deal,
CRM-OPP-.YYYY.-,CRM-OPP-YYYY.-,
Opportunity From,Prilika od,
Customer / Lead Name,Kupac / Ime osobe koja je Lead,
Opportunity Type,Vrsta prilike,
Converted By,Pretvorio,
Sales Stage,Prodajna scena,
Lost Reason,Razlog gubitka,
Expected Closing Date,Očekivani datum zatvaranja,
To Discuss,Za diskusiju,
With Items,Sa stavkama,
Probability (%),Verovatnoća (%),
Contact Info,Kontakt Informacije,
Customer / Lead Address,Kupac / Adresa Lead-a,
Contact Mobile No,Kontak GSM,
Enter name of campaign if source of enquiry is campaign,"Unesite naziv kampanje, ako je izvor upit je kampanja",
Opportunity Date,Datum prilike,
Opportunity Item,Poslovna prilika artikla,
Basic Rate,Osnovna stopa,
Stage Name,Ime faze,
Social Media Post,Post na društvenim mrežama,
Post Status,Post post,
Posted,Objavljeno,
Share On,Podijelite dalje,
Twitter,Twitter,
LinkedIn,LinkedIn,
Twitter Post Id,Twitter Post Id,
LinkedIn Post Id,LinkedIn Post Id,
Tweet,Tweet,
Twitter Settings,Twitter postavke,
API Secret Key,Tajni ključ API-ja,
Term Name,term ime,
Term Start Date,Term Ozljede Datum,
Term End Date,Term Završni datum,
Academics User,akademici korisnika,
Academic Year Name,Akademska godina Ime,
Article,Član,
LMS User,Korisnik LMS-a,
Assessment Criteria Group,Kriteriji procjene Group,
Assessment Group Name,Procjena Ime grupe,
Parent Assessment Group,Parent Procjena Group,
Assessment Name,procjena ime,
Grading Scale,Pravilo Scale,
Examiner,ispitivač,
Examiner Name,Examiner Naziv,
Supervisor,nadzornik,
Supervisor Name,Supervizor ime,
Evaluate,Procijenite,
Maximum Assessment Score,Maksimalan rezultat procjene,
Assessment Plan Criteria,Kriteriji Plan Procjena,
Maximum Score,Maksimalna Score,
Grade,razred,
Assessment Result Detail,Procjena Rezultat Detail,
Assessment Result Tool,Procjena Alat Rezultat,
Result HTML,rezultat HTML,
Content Activity,Sadržajna aktivnost,
Last Activity ,Poslednja aktivnost,
Content Question,Sadržajno pitanje,
Question Link,Link pitanja,
Course Name,Naziv predmeta,
Topics,Teme,
Hero Image,Image Hero,
Default Grading Scale,Uobičajeno Pravilo Scale,
Education Manager,Menadžer obrazovanja,
Course Activity,Aktivnost kursa,
Course Enrollment,Upis na tečaj,
Activity Date,Datum aktivnosti,
Course Assessment Criteria,Kriteriji procjene naravno,
Weightage,Weightage,
Course Content,Sadržaj kursa,
Quiz,Kviz,
Program Enrollment,Upis program,
Enrollment Date,upis Datum,
Instructor Name,instruktor ime,
EDU-CSH-.YYYY.-,EDU-CSH-YYYY.-,
Course Scheduling Tool,Naravno rasporedu Tool,
Course Start Date,Naravno Ozljede Datum,
To TIme,Za vrijeme,
Course End Date,Naravno Završni datum,
Course Topic,Tema kursa,
Topic,tema,
Topic Name,Topic Name,
Education Settings,Obrazovne postavke,
Current Academic Year,Trenutni akademske godine,
Current Academic Term,Trenutni Academic Term,
Attendance Freeze Date,Posjećenost Freeze Datum,
Validate Batch for Students in Student Group,Potvrditi Batch za studente u Studentskom Group,
"For Batch based Student Group, the Student Batch will be validated for every Student from the Program Enrollment.",Za studentske grupe Batch bazi Studentskog Batch će biti potvrđeni za svakog studenta iz Upis Programa.,
Validate Enrolled Course for Students in Student Group,Potvrditi upisala kurs za studente u Studentskom Group,
"For Course based Student Group, the Course will be validated for every Student from the enrolled Courses in Program Enrollment.","Za studentske grupe na osnovu Naravno, kurs će biti potvrđeni za svakog studenta iz upisao jezika u upisu Programa.",
Make Academic Term Mandatory,Obavezni akademski termin,
"If enabled, field Academic Term will be Mandatory in Program Enrollment Tool.","Ako je omogućeno, polje Akademski termin će biti obavezno u alatu za upisivanje programa.",
Skip User creation for new Student,Preskoči stvaranje korisnika za novog učenika,
"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.","Po defaultu se za svakog novog učenika kreira novi korisnik. Ako je omogućeno, neće se kreirati novi korisnik kada se kreira novi student.",
Instructor Records to be created by,Instruktorske zapise koje kreira,
Employee Number,Broj radnika,
Fee Category,naknada Kategorija,
Fee Component,naknada Komponenta,
Fees Category,naknade Kategorija,
Fee Schedule,naknada Raspored,
Fee Structure,naknada Struktura,
EDU-FSH-.YYYY.-,EDU-FSH-YYYY.-,
Fee Creation Status,Status stvaranja naknade,
In Process,U procesu,
Send Payment Request Email,Pošaljite zahtev za plaćanje,
Student Category,student Kategorija,
Fee Breakup for each student,Naknada za svaki student,
Total Amount per Student,Ukupan iznos po učeniku,
Institution,institucija,
Fee Schedule Program,Program raspoređivanja naknada,
Student Batch,student Batch,
Total Students,Ukupno Studenti,
Fee Schedule Student Group,Raspored studijske grupe,
EDU-FST-.YYYY.-,EDU-FST-.YYYY.-,
EDU-FEE-.YYYY.-,EDU-FEE-.YYYY.-,
Include Payment,Uključi plaćanje,
Send Payment Request,Pošaljite zahtev za plaćanje,
Student Details,Student Detalji,
Student Email,Student Email,
Grading Scale Name,Pravilo Scale Ime,
Grading Scale Intervals,Pravilo Scale Intervali,
Intervals,intervali,
Grading Scale Interval,Pravilo Scale Interval,
Grade Code,Grade Kod,
Threshold,prag,
Grade Description,Grade Opis,
Guardian,staratelj,
Guardian Name,Guardian ime,
Alternate Number,Alternativna Broj,
Occupation,okupacija,
Work Address,rad Adresa,
Guardian Of ,Guardian Of,
Students,studenti,
Guardian Interests,Guardian Interesi,
Guardian Interest,Guardian interesa,
Interest,interes,
Guardian Student,Guardian Student,
EDU-INS-.YYYY.-,EDU-INS-.YYYY.-,
Instructor Log,Logor instruktora,
Other details,Ostali detalji,
Option,Opcija,
Is Correct,Tacno je,
Program Name,Naziv programa,
Program Abbreviation,program Skraćenica,
Courses,kursevi,
Is Published,Objavljeno je,
Allow Self Enroll,Dozvoli samoostvarivanje,
Is Featured,Je istaknuto,
Intro Video,Intro Video,
Program Course,program kursa,
School House,School House,
Boarding Student,Boarding Student,
Check this if the Student is residing at the Institute's Hostel.,Označite ovu ako student boravi na Instituta Hostel.,
Walking,hodanje,
Institute's Bus,Institutski autobus,
Public Transport,Javni prijevoz,
Self-Driving Vehicle,Self-vožnje vozila,
Pick/Drop by Guardian,Pick / Drop Guardian,
Enrolled courses,upisani kurseve,
Program Enrollment Course,Program Upis predmeta,
Program Enrollment Fee,Program Upis Naknada,
Program Enrollment Tool,Program Upis Tool,
Get Students From,Get Studenti iz,
Student Applicant,student zahtjeva,
Get Students,Get Studenti,
Enrollment Details,Detalji upisa,
New Program,novi program,
New Student Batch,Nova studentska serija,
Enroll Students,upisati studenti,
New Academic Year,Nova akademska godina,
New Academic Term,Novi akademski termin,
Program Enrollment Tool Student,Program Upis Tool Student,
Student Batch Name,Student Batch Ime,
Program Fee,naknada za program,
Question,Pitanje,
Single Correct Answer,Jedan tačan odgovor,
Multiple Correct Answer,Višestruki ispravan odgovor,
Quiz Configuration,Konfiguracija kviza,
Passing Score,Prolazni rezultat,
Score out of 100,Rezultat od 100,
Max Attempts,Maks pokušaji,
Enter 0 to waive limit,Unesite 0 da biste odbili granicu,
Grading Basis,Osnove ocjenjivanja,
Latest Highest Score,Najnoviji najviši rezultat,
Latest Attempt,Najnoviji pokušaj,
Quiz Activity,Aktivnost kviza,
Enrollment,Upis,
Pass,Pass,
Quiz Question,Pitanje za kviz,
Quiz Result,Rezultat kviza,
Selected Option,Izabrana opcija,
Correct,Tacno,
Wrong,Pogrešno,
Room Name,Soba Naziv,
Room Number,Broj sobe,
Seating Capacity,Broj sjedećih mjesta,
House Name,nazivu,
EDU-STU-.YYYY.-,EDU-STU-YYYY.-,
Student Mobile Number,Student Broj mobilnog,
Blood Group,Krvna grupa,
A+,A +,
A-,A-,
B+,B +,
B-,B-,
O+,O +,
O-,O-,
AB+,AB +,
AB-,AB-,
Nationality,državljanstvo,
Home Address,Kućna adresa,
Guardian Details,Guardian Detalji,
Guardians,čuvari,
Sibling Details,Polubrat Detalji,
Siblings,braća i sestre,
Exit,Izlaz,
Date of Leaving,Datum odlaska,
Leaving Certificate Number,Maturom Broj,
Reason For Leaving,Razlog za napuštanje,
Student Admission,student Ulaz,
Admission Start Date,Prijem Ozljede Datum,
Admission End Date,Prijem Završni datum,
Eligibility and Details,Prihvatljivost i Detalji,
Student Admission Program,Studentski program za prijem studenata,
Minimum Age,Minimalna dob,
Maximum Age,Maksimalno doba,
Application Fee,naknada aplikacija,
Naming Series (for Student Applicant),Imenovanje serija (za studentske Podnositelj zahtjeva),
LMS Only,Samo LMS,
EDU-APP-.YYYY.-,EDU-APP-YYYY.-,
Application Date,patenta,
Student Attendance Tool,Student Posjeta Tool,
Group Based On,Na osnovu grupe,
Students HTML,studenti HTML,
Group Based on,Grupa na osnovu,
Student Group Name,Student Ime grupe,
Max Strength,Max Snaga,
Set 0 for no limit,Set 0 za no limit,
Instructors,instruktori,
Student Group Creation Tool,Student Group Creation Tool,
Leave blank if you make students groups per year,Ostavite prazno ako napravite grupa studenata godišnje,
Get Courses,Get kursevi,
Separate course based Group for every Batch,Poseban grupe na osnovu naravno za svaku seriju,
Leave unchecked if you don't want to consider batch while making course based groups. ,Ostavite nekontrolisano ako ne želite uzeti u obzir batch prilikom donošenja grupe naravno na bazi.,
Student Group Creation Tool Course,Student Group Creation Tool Course,
Course Code,Šifra predmeta,
Student Group Instructor,Student Group Instruktor,
Student Group Student,Student Group Studentski,
Group Roll Number,Grupa Roll Broj,
Student Guardian,student Guardian,
Relation,Odnos,
Mother,majka,
Father,otac,
Student Language,student Jezik,
Student Leave Application,Student Leave aplikacije,
Mark as Present,Mark kao Present,
Student Log,student Prijavite,
Academic,akademski,
Achievement,Postignuće,
Student Report Generation Tool,Alat za generisanje studenata,
Include All Assessment Group,Uključite svu grupu procene,
Show Marks,Pokaži oznake,
Add letterhead,Dodaj slovo,
Print Section,Odsek za štampu,
Total Parents Teacher Meeting,Ukupno sastanak učitelja roditelja,
Attended by Parents,Prisustvuju roditelji,
Assessment Terms,Uslovi za procjenu,
Student Sibling,student Polubrat,
Studying in Same Institute,Studiranje u istom institutu,
NO,Ne,
YES,DA,
Student Siblings,student Siblings,
Topic Content,Sadržaj teme,
Amazon MWS Settings,Amazon MWS Settings,
ERPNext Integrations,ERPNext Integrations,
Enable Amazon,Omogućite Amazon,
MWS Credentials,MVS akreditivi,
Seller ID,ID prodavca,
AWS Access Key ID,AWS Access Key ID,
MWS Auth Token,MWS Auth Token,
Market Place ID,ID tržišta,
AE,AE,
AU,AU,
BR,BR,
CA,CA,
CN,CN,
DE,DE,
ES,ES,
FR,FR,
JP,JP,
IT,IT,
MX,mx,
UK,UK,
US,SAD,
Customer Type,Tip kupca,
Market Place Account Group,Tržišna grupa računa,
After Date,Posle Datuma,
Amazon will synch data updated after this date,Amazon će sinhronizovati podatke ažurirane nakon ovog datuma,
Sync Taxes and Charges,Sinhronizacija poreza i naknada,
Get financial breakup of Taxes and charges data by Amazon ,Dobije finansijski raspad podataka o porezima i naplaćuje Amazon,
Sync Products,Sync Products,
Always sync your products from Amazon MWS before synching the Orders details,Uvijek sinhronizirajte svoje proizvode s Amazona MWS prije sinkronizacije detalja narudžbi,
Sync Orders,Nalozi za sinhronizaciju,
Click this button to pull your Sales Order data from Amazon MWS.,Kliknite ovo dugme da biste izveli podatke o prodaji iz Amazon MWS-a.,
Enable Scheduled Sync,Omogućite planiranu sinhronizaciju,
Check this to enable a scheduled Daily synchronization routine via scheduler,Proverite ovo da biste omogućili planiranu dnevnu sinhronizaciju rutine preko rasporeda,
Max Retry Limit,Maks retry limit,
Exotel Settings,Exotel Settings,
Account SID,SID računa,
API Token,API Token,
GoCardless Mandate,GoCardless Mandate,
Mandate,Mandat,
GoCardless Customer,GoCardless kupac,
GoCardless Settings,GoCardless Settings,
Webhooks Secret,Webhooks Secret,
Plaid Settings,Plaid Settings,
Synchronize all accounts every hour,Sinkronizirajte sve račune na svakih sat vremena,
Plaid Client ID,Plaid ID klijenta,
Plaid Secret,Plaid Secret,
Plaid Environment,Plaid Environment,
sandbox,peskovnik,
development,razvoj,
production,proizvodnja,
QuickBooks Migrator,QuickBooks Migrator,
Application Settings,Postavke aplikacije,
Token Endpoint,Krajnji tačak žetona,
Scope,Obim,
Authorization Settings,Podešavanja autorizacije,
Authorization Endpoint,Autorizacija Endpoint,
Authorization URL,URL autorizacije,
Quickbooks Company ID,Identifikacijski broj kompanije Quickbooks,
Company Settings,Tvrtka Postavke,
Default Shipping Account,Uobičajeni nalog za isporuku,
Default Warehouse,Glavno skladište,
Default Cost Center,Standard Cost Center,
Undeposited Funds Account,Račun Undeposited Funds,
Shopify Log,Shopify Log,
Request Data,Zahtevajte podatke,
Shopify Settings,Shopify Settings,
status html,status html,
Enable Shopify,Omogući Shopify,
App Type,Tip aplikacije,
Last Sync Datetime,Last Sync Datetime,
Shop URL,URL prodavnice,
eg: frappe.myshopify.com,npr: frappe.myshopify.com,
Shared secret,Zajednička tajna,
Webhooks Details,Webhooks Details,
Webhooks,Webhooks,
Customer Settings,Postavke klijenta,
Default Customer,Podrazumevani korisnik,
Customer Group will set to selected group while syncing customers from Shopify,Grupa potrošača će postaviti odabranu grupu dok sinhronizuje kupce iz Shopify-a,
For Company,Za tvrtke,
Cash Account will used for Sales Invoice creation,Gotovinski račun će se koristiti za kreiranje prodajne fakture,
Update Price from Shopify To ERPNext Price List,Ažurirajte cijenu od Shopify do ERPNext Cjenik,
Default Warehouse to to create Sales Order and Delivery Note,Podrazumevano skladište za kreiranje naloga za prodaju i dostave,
Sales Order Series,Narudžbe serije prodaje,
Import Delivery Notes from Shopify on Shipment,Napomene o uvoznoj isporuci od Shopify na pošiljci,
Delivery Note Series,Serija Napomena o isporuci,
Import Sales Invoice from Shopify if Payment is marked,Uvezite fakturu prodaje iz Shopify-a ako je oznaka uplaćena,
Sales Invoice Series,Serija faktura prodaje,
Shopify Tax Account,Kupujte poreski račun,
Shopify Tax/Shipping Title,Kupujte naslov poreza / dopuštenja,
ERPNext Account,ERPNext nalog,
Shopify Webhook Detail,Shopify Webhook Detail,
Webhook ID,Webhook ID,
Tally Migration,Tally Migration,
Master Data,Glavni podaci,
"Data exported from Tally that consists of the Chart of Accounts, Customers, Suppliers, Addresses, Items and UOMs","Podaci izvezeni iz Tally-a koji se sastoje od kontnog plana, kupaca, dobavljača, adresa, predmeta i UOM-ova",
Is Master Data Processed,Obrađuju li se glavni podaci,
Is Master Data Imported,Uvezu se glavni podaci,
Tally Creditors Account,Račun poverioca Tally,
Creditors Account set in Tally,Račun povjerilaca postavljen u Tally,
Tally Debtors Account,Račun dužnika Tally,
Debtors Account set in Tally,Račun dužnika postavljen u Tally-u,
Tally Company,Tally Company,
Company Name as per Imported Tally Data,Naziv kompanije prema uvoznim Tally podacima,
Default UOM,Zadani UOM,
UOM in case unspecified in imported data,UOM u slučaju da nije specificiran u uvezenim podacima,
ERPNext Company,Kompanija ERPNext,
Your Company set in ERPNext,Vaša kompanija smještena je u ERPNext,
Processed Files,Obrađene datoteke,
Parties,Stranke,
UOMs,UOMs,
Vouchers,Vaučeri,
Round Off Account,Zaokružiti račun,
Day Book Data,Podaci o dnevnoj knjizi,
Day Book Data exported from Tally that consists of all historic transactions,Podaci iz dnevne knjige izvezeni iz Tally-a koji se sastoje od svih povijesnih transakcija,
Is Day Book Data Processed,Obrađuju se podaci dnevnih knjiga,
Is Day Book Data Imported,Uvoze li se podaci dnevnih knjiga,
Woocommerce Settings,Woocommerce postavke,
Enable Sync,Omogući sinhronizaciju,
Woocommerce Server URL,Woocommerce Server URL,
Secret,Tajna,
API consumer key,API korisnički ključ,
API consumer secret,API potrošačke tajne,
Tax Account,Poreski račun,
Freight and Forwarding Account,Teretni i špediterski račun,
Creation User,Stvaranje korisnika,
"The user that will be used to create Customers, Items and Sales Orders. This user should have the relevant permissions.","Korisnik koji će se koristiti za kreiranje kupaca, predmeta i naloga za prodaju. Ovaj korisnik trebao bi imati odgovarajuća dopuštenja.",
"This warehouse will be used to create Sales Orders. The fallback warehouse is ""Stores"".",Ovo skladište će se koristiti za kreiranje prodajnih naloga. Rezervno skladište su &quot;Trgovine&quot;.,
"The fallback series is ""SO-WOO-"".",Rezervna serija je „SO-WOO-“.,
This company will be used to create Sales Orders.,Ova kompanija će se koristiti za kreiranje prodajnih naloga.,
Delivery After (Days),Dostava nakon (dana),
This is the default offset (days) for the Delivery Date in Sales Orders. The fallback offset is 7 days from the order placement date.,Ovo je zadani offset (dani) za datum isporuke u prodajnim nalozima. Ponovno nadoknađivanje je 7 dana od datuma slanja narudžbe.,
"This is the default UOM used for items and Sales orders. The fallback UOM is ""Nos"".",Ovo je zadani UOM koji se koristi za artikle i prodajne naloge. Povratna UOM je &quot;Nos&quot;.,
Endpoints,Krajnje tačke,
Endpoint,Krajnja tačka,
Antibiotic Name,Antibiotički naziv,
Healthcare Administrator,Administrator zdravstvene zaštite,
Laboratory User,Laboratorijski korisnik,
Is Inpatient,Je stacionarno,
Default Duration (In Minutes),Zadano trajanje (u minutama),
Body Part,Dio tijela,
Body Part Link,Link dijela tijela,
HLC-CPR-.YYYY.-,HLC-CPR-YYYY.-,
Procedure Template,Šablon procedure,
Procedure Prescription,Procedura Prescription,
Service Unit,Servisna jedinica,
Consumables,Potrošni materijal,
Consume Stock,Consume Stock,
Invoice Consumables Separately,Fakturirajte potrošni materijal odvojeno,
Consumption Invoiced,Potrošnja fakturirana,
Consumable Total Amount,Potrošni ukupni iznos,
Consumption Details,Detalji potrošnje,
Nursing User,Korisnik medicinske sestre,
Clinical Procedure Item,Klinička procedura,
Invoice Separately as Consumables,Faktura posebno kao Potrošni materijal,
Transfer Qty,Transfer Količina,
Actual Qty (at source/target),Stvarna kol (na izvoru/cilju),
Is Billable,Da li se može naplatiti,
Allow Stock Consumption,Dozvolite potrošnju zaliha,
Sample UOM,Uzorak UOM,
Collection Details,Detalji o kolekciji,
Change In Item,Promjena stavke,
Codification Table,Tabela kodifikacije,
Complaints,Žalbe,
Dosage Strength,Snaga doziranja,
Strength,Snaga,
Drug Prescription,Prescription drugs,
Drug Name / Description,Naziv / opis lijeka,
Dosage,Doziranje,
Dosage by Time Interval,Doziranje po vremenskom intervalu,
Interval,Interval,
Interval UOM,Interval UOM,
Hour,Sat,
Update Schedule,Raspored ažuriranja,
Exercise,Vježbaj,
Difficulty Level,Nivo poteškoće,
Counts Target,Broji meta,
Counts Completed,Brojanja završena,
Assistance Level,Nivo pomoći,
Active Assist,Active Assist,
Exercise Name,Naziv vježbe,
Body Parts,Dijelovi tijela,
Exercise Instructions,Upute za vježbu,
Exercise Video,Video za vježbu,
Exercise Steps,Koraci vježbanja,
Steps,Koraci,
Steps Table,Tabela koraka,
Exercise Type Step,Tip vježbe korak,
Max number of visit,Maksimalan broj poseta,
Visited yet,Posjećeno još,
Reference Appointments,Referentna imenovanja,
Valid till,Vrijedi do,
Fee Validity Reference,Referenca valjanosti naknade,
Basic Details,Osnovni detalji,
HLC-PRAC-.YYYY.-,FHP-PRAC-.GGGG.-,
Mobile,Mobilni,
Phone (R),Telefon (R),
Phone (Office),Telefon (Office),
Employee and User Details,Podaci o zaposleniku i korisniku,
Hospital,Bolnica,
Appointments,Imenovanja,
Practitioner Schedules,Raspored lekara,
Charges,Naknade,
Out Patient Consulting Charge,Naknada za konsultacije sa pacijentima,
Default Currency,Zadana valuta,
Healthcare Schedule Time Slot,Vremenska raspored zdravstvene zaštite,
Parent Service Unit,Jedinica za roditeljsku službu,
Service Unit Type,Tip jedinice servisne jedinice,
Allow Appointments,Dozvoli zakazivanja,
Allow Overlap,Dopusti preklapanje,
Inpatient Occupancy,Bolničko stanovanje,
Occupancy Status,Status zauzetosti,
Vacant,Slobodno,
Occupied,Zauzeti,
Item Details,Detalji artikla,
UOM Conversion in Hours,UOM konverzija u satima,
Rate / UOM,Rate / UOM,
Change in Item,Promenite stavku,
Out Patient Settings,Out Pacijent Settings,
Patient Name By,Ime pacijenta,
Patient Name,Ime pacijenta,
Link Customer to Patient,Povežite kupca sa pacijentom,
"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.","Ako se proveri, biće kreiran korisnik, mapiran na Pacijent. Pacijentove fakture će biti stvorene protiv ovog Korisnika. Takođe možete izabrati postojećeg kupca prilikom stvaranja Pacijenta.",
Default Medical Code Standard,Standardni medicinski kodni standard,
Collect Fee for Patient Registration,Prikupiti naknadu za registraciju pacijenta,
Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.,"Ako provjerite ovo, stvorit će se novi pacijenti sa statusom onemogućenog prema zadanim postavkama i bit će omogućeni tek nakon fakturiranja naknade za registraciju.",
Registration Fee,Kotizaciju,
Automate Appointment Invoicing,Automatizirajte fakturiranje imenovanja,
Manage Appointment Invoice submit and cancel automatically for Patient Encounter,Upravljanje imenovanjima Faktura podnosi i otkazati automatski za susret pacijenta,
Enable Free Follow-ups,Omogućite besplatna praćenja,
Number of Patient Encounters in Valid Days,Broj susreta pacijenata u važećim danima,
The number of free follow ups (Patient Encounters in valid days) allowed,Dozvoljen broj besplatnih praćenja (Susreti pacijenata u važećim danima),
Valid Number of Days,Veliki broj dana,
Time period (Valid number of days) for free consultations,Vremenski period (važeći broj dana) za besplatne konsultacije,
Default Healthcare Service Items,Zadane stavke zdravstvenih usluga,
"You can configure default Items for billing consultation charges, procedure consumption items and inpatient visits","Možete konfigurirati zadane stavke za troškove savjetovanja za naplatu, stavke potrošnje postupka i stacionarne posjete",
Clinical Procedure Consumable Item,Klinička procedura Potrošna stavka,
Default Accounts,Zadani računi,
Default income accounts to be used if not set in Healthcare Practitioner to book Appointment charges.,Uobičajeni računi prihoda koji će se koristiti ako nisu postavljeni u Zdravstvenom lekaru da rezervišu troškove naplate.,
Default receivable accounts to be used to book Appointment charges.,Zadani računi potraživanja koji će se koristiti za knjiženje troškova imenovanja.,
Out Patient SMS Alerts,Out Patient SMS upozorenja,
Patient Registration,Registracija pacijenata,
Registration Message,Poruka za upis,
Confirmation Message,Potvrda poruka,
Avoid Confirmation,Izbjegavajte potvrdu,
Do not confirm if appointment is created for the same day,Ne potvrdite da li je zakazan termin za isti dan,
Appointment Reminder,Pamćenje imenovanja,
Reminder Message,Poruka podsetnika,
Laboratory Settings,Laboratorijske postavke,
Create Lab Test(s) on Sales Invoice Submission,Kreirajte laboratorijske testove na podnošenju fakture za prodaju,
Checking this will create Lab Test(s) specified in the Sales Invoice on submission.,"Ako potvrdite ovo, stvoriće se laboratorijski testovi navedeni u Računu prodaje prilikom slanja.",
Create Sample Collection document for Lab Test,Stvorite dokument za prikupljanje uzoraka za laboratorijski test,
Checking this will create a Sample Collection document  every time you create a Lab Test,"Ako potvrdite ovo, stvoriće se dokument sa uzorcima svaki put kada kreirate laboratorijski test",
Employee name and designation in print,Ime i oznaka zaposlenika u štampi,
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.,Označite ovo ako želite da se ime i ime zaposlenika povezanog s korisnikom koji preda dokument ispišu u izvještaju o laboratorijskom ispitivanju.,
Do not print or email Lab Tests without Approval,Nemojte štampati ili slati laboratorijske testove bez odobrenja,
Checking this will restrict printing and emailing of Lab Test documents unless they have the status as Approved.,"Ako ovo provjerite, ograničit će se ispis i slanje dokumenata laboratorijskog testa po e-pošti, osim ako nemaju status Odobreno.",
Custom Signature in Print,Prilagođeni potpis u štampi,
Laboratory SMS Alerts,Laboratorijski SMS upozorenja,
Result Printed Message,Rezultat ispisana poruka,
Result Emailed Message,Poruka rezultata e-poštom,
Check In,Provjeri,
Check Out,Provjeri,
HLC-INP-.YYYY.-,HLC-INP-YYYY.-,
A Positive,Pozitivan,
A Negative,Negativan,
AB Positive,AB Pozitivan,
AB Negative,AB Negativ,
B Positive,B Pozitivan,
B Negative,B Negativno,
O Positive,O Pozitivno,
O Negative,O Negativ,
Date of birth,Datum rođenja,
Admission Scheduled,Prijem zakazan,
Discharge Scheduled,Pražnjenje je zakazano,
Discharged,Ispušteni,
Admission Schedule Date,Datum prijema prijave,
Admitted Datetime,Prihvaćeno Datetime,
Expected Discharge,Očekivano pražnjenje,
Discharge Date,Datum otpustanja,
Lab Prescription,Lab recept,
Lab Test Name,Naziv laboratorijskog testa,
Test Created,Test Created,
Submitted Date,Datum podnošenja,
Approved Date,Odobreni datum,
Sample ID,Primer uzorka,
Lab Technician,Laboratorijski tehničar,
Report Preference,Prednost prijave,
Test Name,Ime testa,
Test Template,Test Template,
Test Group,Test grupa,
Custom Result,Prilagođeni rezultat,
LabTest Approver,LabTest Approver,
Add Test,Dodajte test,
Normal Range,Normalni opseg,
Result Format,Format rezultata,
Single,Singl,
Compound,Jedinjenje,
Descriptive,Deskriptivno,
Grouped,Grupisano,
No Result,Bez rezultata,
This value is updated in the Default Sales Price List.,Ova vrijednost se ažurira na listi podrazumevanih prodajnih cijena.,
Lab Routine,Lab Routine,
Result Value,Vrednost rezultata,
Require Result Value,Zahtevaj vrednost rezultata,
Normal Test Template,Normalni testni šablon,
Patient Demographics,Demografija pacijenta,
HLC-PAT-.YYYY.-,HLC-PAT-YYYY.-,
Middle Name (optional),Srednje ime (nije obavezno),
Inpatient Status,Status bolesnika,
"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.","Ako je u postavkama zdravstvene zaštite označeno &quot;Poveži kupca sa pacijentom&quot; i ne odabere se postojeći kupac, za ovog pacijenta će se stvoriti kupac za evidentiranje transakcija u modulu Računi.",
Personal and Social History,Lična i društvena istorija,
Marital Status,Bračni status,
Married,Oženjen,
Divorced,Rastavljen,
Widow,Udovica,
Patient Relation,Relacija pacijenta,
"Allergies, Medical and Surgical History","Alergije, medicinska i hirurška istorija",
Allergies,Alergije,
Medication,Lijekovi,
Medical History,Medicinska istorija,
Surgical History,Hirurška istorija,
Risk Factors,Faktori rizika,
Occupational Hazards and Environmental Factors,Opasnosti po životnu sredinu i faktore zaštite životne sredine,
Other Risk Factors,Ostali faktori rizika,
Patient Details,Detalji pacijenta,
Additional information regarding the patient,Dodatne informacije o pacijentu,
HLC-APP-.YYYY.-,FHP-APP-.GGGG.-,
Patient Age,Pacijentsko doba,
Get Prescribed Clinical Procedures,Zatražite propisane kliničke postupke,
Therapy,Terapija,
Get Prescribed Therapies,Nabavite propisane terapije,
Appointment Datetime,Imenovanje Datum i vrijeme,
Duration (In Minutes),Trajanje (u minutama),
Reference Sales Invoice,Referentna faktura prodaje,
More Info,Više informacija,
Referring Practitioner,Poznavanje lekara,
HLC-PA-.YYYY.-,FHP-PA-.GGGG.-,
Assessment Template,Predložak procjene,
Assessment Datetime,Procjena datum i vrijeme,
Assessment Description,Opis procjene,
Assessment Sheet,Procjena lista,
Total Score Obtained,Ukupni postignuti rezultat,
Scale Min,Vaga Min,
Scale Max,Skala Max,
Patient Assessment Detail,Detalji o procjeni pacijenta,
Assessment Parameter,Parametar procjene,
Patient Assessment Parameter,Parametar procjene pacijenta,
Patient Assessment Sheet,List za procjenu pacijenta,
Patient Assessment Template,Predložak procjene pacijenta,
Assessment Parameters,Parametri procjene,
Parameters,Parametri,
Assessment Scale,Skala procjene,
Scale Minimum,Skala minimalna,
Scale Maximum,Skala maksimum,
HLC-ENC-.YYYY.-,HLC-ENC-YYYY.-,
Encounter Date,Datum susreta,
Encounter Time,Vrijeme susreta,
Encounter Impression,Encounter Impression,
Symptoms,Simptomi,
In print,U štampi,
Medical Coding,Medicinsko kodiranje,
Procedures,Procedure,
Therapies,Terapije,
Review Details,Detalji pregleda,
Patient Encounter Diagnosis,Dijagnoza susreta pacijenta,
Patient Encounter Symptom,Simptom susreta s pacijentom,
HLC-PMR-.YYYY.-,HLC-PMR-YYYY.-,
Attach Medical Record,Priložite medicinsku evidenciju,
Reference DocType,Referenca DocType,
Spouse,Supružnik,
Family,Porodica,
Schedule Details,Detalji rasporeda,
Schedule Name,Ime rasporeda,
Time Slots,Time Slots,
Practitioner Service Unit Schedule,Raspored jedinica službe lekara,
Procedure Name,Ime postupka,
Appointment Booked,Imenovanje rezervirano,
Procedure Created,Kreiran postupak,
HLC-SC-.YYYY.-,HLC-SC-YYYY.-,
Collected By,Prikupljeno od strane,
Particulars,Posebnosti,
Result Component,Komponenta rezultata,
HLC-THP-.YYYY.-,FHP-THP-.GGGG.-,
Therapy Plan Details,Detalji plana terapije,
Total Sessions,Ukupno sesija,
Total Sessions Completed,Ukupno završenih sesija,
Therapy Plan Detail,Detalji plana terapije,
No of Sessions,Broj sesija,
Sessions Completed,Sesije završene,
Tele,Tele,
Exercises,Vježbe,
Therapy For,Terapija za,
Add Exercises,Dodajte vježbe,
Body Temperature,Temperatura tela,
Presence of a fever (temp &gt; 38.5 °C/101.3 °F or sustained temp &gt; 38 °C/100.4 °F),"Prisustvo groznice (temperatura&gt; 38,5 ° C / 101,3 ° F ili trajna temperatura&gt; 38 ° C / 100,4 ° F)",
Heart Rate / Pulse,Srčana brzina / impuls,
Adults' pulse rate is anywhere between 50 and 80 beats per minute.,Stopa pulsa odraslih je između 50 i 80 otkucaja u minuti.,
Respiratory rate,Stopa respiratornih organa,
Normal reference range for an adult is 16–20 breaths/minute (RCP 2012),Normalni referentni opseg za odraslu osobu je 16-20 diha / minut (RCP 2012),
Tongue,Jezik,
Coated,Premazan,
Very Coated,Veoma prevučeni,
Normal,Normalno,
Furry,Furry,
Cuts,Rezanja,
Abdomen,Stomak,
Bloated,Vatreno,
Fluid,Fluid,
Constipated,Zapremljen,
Reflexes,Refleksi,
Hyper,Hyper,
Very Hyper,Veoma Hyper,
One Sided,Jednostrani,
Blood Pressure (systolic),Krvni pritisak (sistolni),
Blood Pressure (diastolic),Krvni pritisak (dijastolni),
Blood Pressure,Krvni pritisak,
"Normal resting blood pressure in an adult is approximately 120 mmHg systolic, and 80 mmHg diastolic, abbreviated ""120/80 mmHg""","Normalni krvni pritisak pri odraslima je oko 120 mmHg sistolnog, a dijastolni 80 mmHg, skraćeni &quot;120/80 mmHg&quot;",
Nutrition Values,Vrednosti ishrane,
Height (In Meter),Visina (u metrima),
Weight (In Kilogram),Težina (u kilogramu),
BMI,BMI,
Hotel Room,Hotelska soba,
Hotel Room Type,Tip sobe hotela,
Capacity,Kapacitet,
Extra Bed Capacity,Kapacitet dodatnog ležaja,
Hotel Manager,Menadžer hotela,
Hotel Room Amenity,Hotelska soba Amenity,
Billable,Naplativo,
Hotel Room Package,Paket za hotelsku sobu,
Amenities,Pogodnosti,
Hotel Room Pricing,Hotelska soba Pricing,
Hotel Room Pricing Item,Stavka hotela u sobi,
Hotel Room Pricing Package,Paket za hotelsku sobu,
Hotel Room Reservation,Hotelska rezervacija,
Guest Name,Ime gosta,
Late Checkin,Late Checkin,
Booked,Rezervirano,
Hotel Reservation User,Rezervacija korisnika hotela,
Hotel Room Reservation Item,Hotelska rezervacija Stavka,
Hotel Settings,Hotel Settings,
Default Taxes and Charges,Uobičajeno Porezi i naknadama,
Default Invoice Naming Series,Podrazumevana faktura imenovanja serije,
HR,HR,
Date on which this component is applied,Datum primjene ove komponente,
Salary Slip,Plaća proklizavanja,
HR User,HR korisnika,
Job Applicant,Posao podnositelj,
Body,Telo,
Appraisal Template,Procjena Predložak,
Parent Department,Odeljenje roditelja,
Leave Block List,Ostavite Block List,
Days for which Holidays are blocked for this department.,Dani za koje su praznici blokirani za ovaj odjel.,
Leave Approver,Ostavite odobravatelju,
Expense Approver,Rashodi Approver,
Required Skills,Potrebne veštine,
Skills,Vještine,
Driver,Vozač,
HR-DRI-.YYYY.-,HR-DRI-.YYYY.-,
Suspended,Suspendirano,
Transporter,Transporter,
Applicable for external driver,Važeće za spoljni upravljački program,
Cellphone Number,Broj mobitela,
License Details,Detalji o licenci,
License Number,Broj licence,
Issuing Date,Datum izdavanja,
Driving License Categories,Vozačke dozvole Kategorije,
Driving License Category,Kategorija vozačke dozvole,
Fleet Manager,Fleet Manager,
Driver licence class,Klasa vozačke dozvole,
HR-EMP-,HR-EMP-,
Employment Type,Zapošljavanje Tip,
Emergency Contact,Hitni kontakt,
Emergency Contact Name,Ime kontakta za hitne slučajeve,
Emergency Phone,Hitna Telefon,
ERPNext User,ERPNext User,
"System User (login) ID. If set, it will become default for all HR forms.","ID korisnika sustava. Ako je postavljen, postat će zadani za sve HR oblike.",
Create User Permission,Kreirajte dozvolu korisnika,
This will restrict user access to other employee records,Ovo će ograničiti pristup korisnika drugim zapisima zaposlenih,
Joining Details,Sastavljanje Detalji,
Offer Date,ponuda Datum,
Confirmation Date,potvrda Datum,
Contract End Date,Ugovor Datum završetka,
Notice (days),Obavijest (dani ),
Date Of Retirement,Datum odlaska u mirovinu,
Department and Grade,Odeljenje i razred,
Reports to,Izvještaji za,
Attendance and Leave Details,Detalji posjeta i odlaska,
Attendance Device ID (Biometric/RF tag ID),ID uređaja prisutnosti (ID biometrijske / RF oznake),
Applicable Holiday List,Primjenjivo odmor Popis,
Default Shift,Podrazumevano Shift,
Salary Mode,Plaća način,
Bank A/C No.,Bankovni  A/C br.,
Health Insurance,Zdravstveno osiguranje,
Health Insurance Provider,Zdravstveno osiguranje,
Health Insurance No,Zdravstveno osiguranje br,
Prefered Email,Prefered mail,
Personal Email,Osobni e,
Permanent Address Is,Stalna adresa je,
Rented,Iznajmljuje,
Owned,U vlasništvu,
Permanent Address,Stalna adresa,
Prefered Contact Email,Prefered Kontakt mail,
Company Email,Zvanični e-mail,
Provide Email Address registered in company,Osigurati mail registrovan u kompaniji Adresa,
Current Address Is,Trenutni Adresa je,
Current Address,Trenutna adresa,
Personal Bio,Lični Bio,
Bio / Cover Letter,Bio / Cover Letter,
Short biography for website and other publications.,Kratka biografija za web stranice i druge publikacije.,
Passport Number,Putovnica Broj,
Date of Issue,Datum izdavanja,
Place of Issue,Mjesto izdavanja,
Widowed,Udovički,
Family Background,Obitelj Pozadina,
"Here you can maintain family details like name and occupation of parent, spouse and children","Ovdje možete održavati obiteljske pojedinosti kao što su ime i okupacije roditelja, supružnika i djecu",
Health Details,Zdravlje Detalji,
"Here you can maintain height, weight, allergies, medical concerns etc","Ovdje možete održavati visina, težina, alergije, medicinske brige itd.",
Educational Qualification,Obrazovne kvalifikacije,
Previous Work Experience,Radnog iskustva,
External Work History,Vanjski History Work,
History In Company,Povijest tvrtke,
Internal Work History,Interni History Work,
Resignation Letter Date,Ostavka Pismo Datum,
Relieving Date,Rasterećenje Datum,
Reason for Leaving,Razlog za odlazak,
Leave Encashed?,Ostavite Encashed?,
Encashment Date,Encashment Datum,
New Workplace,Novi radnom mjestu,
Returned Amount,Iznos vraćenog iznosa,
Advance Account,Advance Account,
Benefits Applied,Prednosti koje se primjenjuju,
Benefit Type and Amount,Tip i iznos povlastice,
Task Weight,zadatak Težina,
Employee Education,Obrazovanje zaposlenog,
School/University,Škola / Univerzitet,
Graduate,Diplomski,
Post Graduate,Post diplomski,
Under Graduate,Pod diplomski,
Year of Passing,Tekuća godina,
Class / Percentage,Klasa / Postotak,
Major/Optional Subjects,Glavni / Izborni predmeti,
Employee External Work History,Istorija rada zaposlenog izvan preduzeća,
Total Experience,Ukupno Iskustvo,
Default Leave Policy,Default Leave Policy,
Employee Group Table,Tabela grupe zaposlenih,
ERPNext User ID,ERPNext User ID,
Employee Internal Work History,Istorija rada zaposlenog u preduzeću,
Activities,Aktivnosti,
Employee Onboarding Activity,Aktivnost aktivnosti na radnom mjestu,
Employee Promotion Detail,Detalji o napredovanju zaposlenih,
Employee Transfer Property,Imovina Transfera zaposlenika,
Unclaimed amount,Neobjavljeni iznos,
Holiday List Name,Naziv liste odmora,
Total Holidays,Total Holidays,
Add Weekly Holidays,Dodajte Weekly Holidays,
Weekly Off,Tjedni Off,
Add to Holidays,Dodaj u praznike,
Holidays,Praznici,
Clear Table,Poništi tabelu,
Retirement Age,Retirement Godine,
Enter retirement age in years,Unesite dob za odlazak u penziju u godinama,
Stop Birthday Reminders,Zaustavi Rođendan Podsjetnici,
Leave Settings,Ostavite podešavanja,
Accepted,Prihvaćeno,
Printing Details,Printing Detalji,
Job Title,Titula,
Allocation,Alokacija,
Select Employees,Odaberite Zaposleni,
Allocate,Dodijeli,
Max Leaves Allowed,Maksimalno dozvoljeno odstupanje,
Maximum Continuous Days Applicable,Primenjivi su maksimalni trajni dani,
Select Payroll Period,Odaberite perioda isplate,
Abbr,Skraćeni naziv,
Condition and Formula,Stanje i formula,
Total Working Hours,Ukupno Radno vrijeme,
Hour Rate,Cijena sata,
Bank Account No.,Žiro račun broj,
Earning & Deduction,Zarada &amp; Odbitak,
Loan repayment,Otplata kredita,
Employee Loan,zaposlenik kredita,
Total Principal Amount,Ukupni glavni iznos,
Total Interest Amount,Ukupan iznos kamate,
Total Loan Repayment,Ukupno otplate kredita,
net pay info,neto plata info,
Gross Pay - Total Deduction - Loan Repayment,Bruto Pay - Ukupno odbitak - Otplata kredita,
Net Pay (in words) will be visible once you save the Salary Slip.,Neto plaća (riječima) će biti vidljiva nakon što spremite klizne plaće.,
Staffing Plan Details,Detalji o kadrovskom planu,
Optional,Neobavezno,
Costing,Koštanje,
Vehicle,vozilo,
License Plate,registarska tablica,
Odometer Value (Last),Odometar vrijednost (Zadnje),
Acquisition Date,akvizicija Datum,
Chassis No,šasija Ne,
Vehicle Value,Vrijednost vozila,
Insurance Details,osiguranje Detalji,
Insurance Company,Insurance Company,
Policy No,Politika Nema,
Additional Details,Dodatni Detalji,
Fuel Type,Vrsta goriva,
Petrol,benzin,
Diesel,dizel,
Natural Gas,prirodni gas,
Electric,Electric,
Fuel UOM,gorivo UOM,
Last Carbon Check,Zadnji Carbon Check,
Wheels,Wheels,
Doors,vrata,
last Odometer Value ,zadnja vrijednost odometra,
Service Detail,Servis Detail,
Hub Tracked Item,Hub Gusjen stavka,
Hub Node,Hub Node,
Image List,Lista slika,
Item Manager,Stavka Manager,
Hub User,Hub User,
Hub Password,Hub Password,
Hub Users,Korisnici Hub-a,
Marketplace Settings,Postavke tržišta,
Disable Marketplace,Onemogući tržište,
Marketplace URL (to hide and update label),URL prodavnice (za skrivanje i ažuriranje oznake),
Registered,Registrovano,
Sync in Progress,Sinhronizacija u toku,
Hub Seller Name,Hub Ime prodavca,
Custom Data,Korisnički podaci,
Repay From Salary,Otplatiti iz Plata,
Regular Payment,Redovna uplata,
Loan Closure,Zatvaranje zajma,
Rate of Interest (%) Yearly,Kamatnu stopu (%) Godišnji,
MAT-MSH-.YYYY.-,MAT-MSH-YYYY.-,
Generate Schedule,Generiranje Raspored,
Schedules,Rasporedi,
Maintenance Schedule Detail,Raspored održavanja detaljno,
Scheduled Date,Planski datum,
Actual Date,Stvarni datum,
Maintenance Schedule Item,Raspored održavanja stavki,
Random,Slučajno,
No of Visits,Bez pregleda,
MAT-MVS-.YYYY.-,MAT-MVS-YYYY.-,
Maintenance Date,Održavanje Datum,
Maintenance Time,Održavanje Vrijeme,
Completion Status,Završetak Status,
Partially Completed,Djelomično Završeni,
Fully Completed,Potpuno Završeni,
Unscheduled,Neplanski,
Breakdown,Slom,
Purposes,Namjene,
Customer Feedback,Ocjena Kupca,
Maintenance Visit Purpose,Svrha posjete za odrzavanje,
Work Done,Rad Done,
Against Document No,Protiv dokumentu nema,
Against Document Detail No,Protiv dokumenta Detalj No,
MFG-BLR-.YYYY.-,MFG-BLR-YYYY.-,
Order Type,Vrsta narudžbe,
Blanket Order Item,Stavka narudžbe odeće,
Ordered Quantity,Naručena količina,
Item to be manufactured or repacked,Artikal će biti proizveden ili prepakiran,
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Količina predmeta dobije nakon proizvodnju / pakiranje od navedenih količina sirovina,
Set rate of sub-assembly item based on BOM,Postavite brzinu stavke podkomponenta na osnovu BOM-a,
Allow Alternative Item,Dozvoli alternativu,
Item UOM,Mjerna jedinica artikla,
Conversion Rate,Stopa konverzije,
Rate Of Materials Based On,Stopa materijali na temelju,
With Operations,Uz operacije,
Manage cost of operations,Upravljanje troškove poslovanja,
Transfer Material Against,Prenos materijala protiv,
Routing,Routing,
Materials,Materijali,
Quality Inspection Required,Potrebna inspekcija kvaliteta,
Quality Inspection Template,Šablon za proveru kvaliteta,
Scrap,komadić,
Scrap Items,Scrap Predmeti,
Operating Cost,Operativni troškovi,
Raw Material Cost,Troškovi sirovina,
Scrap Material Cost,Otpadnog materijala troškova,
Operating Cost (Company Currency),Operativni trošak (Company Valuta),
Raw Material Cost (Company Currency),Trošak sirovina (Kompanija valuta),
Scrap Material Cost(Company Currency),Otpadnog materijala troškova (poduzeća Valuta),
Total Cost,Ukupan trošak,
Total Cost (Company Currency),Ukupni trošak (valuta kompanije),
Materials Required (Exploded),Materijali Obavezno (eksplodirala),
Exploded Items,Eksplodirani predmeti,
Show in Website,Prikaži na web lokaciji,
Item Image (if not slideshow),Slika proizvoda (ako nije slide prikaz),
Thumbnail,Thumbnail,
Website Specifications,Web Specifikacije,
Show Items,Pokaži Predmeti,
Show Operations,Pokaži operacije,
Website Description,Web stranica Opis,
BOM Explosion Item,BOM eksplozije artikla,
Qty Consumed Per Unit,Kol Potrošeno po jedinici,
Include Item In Manufacturing,Uključi stavku u proizvodnju,
BOM Item,BOM proizvod,
Item operation,Rad operacija,
Rate & Amount,Cijena i količina,
Basic Rate (Company Currency),Osnovna stopa (valuta preduzeća),
Scrap %,Otpad%,
Original Item,Original Item,
BOM Operation,BOM operacija,
Operation Time ,Vrijeme rada,
In minutes,Za nekoliko minuta,
Batch Size,Veličina serije,
Base Hour Rate(Company Currency),Base Hour Rate (Company Valuta),
Operating Cost(Company Currency),Operativni trošak (Company Valuta),
BOM Scrap Item,BOM otpad Stavka,
Basic Amount (Company Currency),Osnovni Iznos (Company Valuta),
BOM Update Tool,Alat za ažuriranje 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.","Zamenite određenu tehničku tehničku pomoć u svim ostalim BOM-u gde se koristi. On će zamijeniti stari BOM link, ažurirati troškove i regenerirati tabelu &quot;BOM Explosion Item&quot; po novom BOM-u. Takođe ažurira najnoviju cenu u svim BOM.",
Replace BOM,Zamijenite BOM,
Current BOM,Trenutni BOM,
The BOM which will be replaced,BOM koji će biti zamijenjen,
The new BOM after replacement,Novi BOM nakon zamjene,
Replace,Zamijeniti,
Update latest price in all BOMs,Ažurirajte najnoviju cenu u svim BOM,
BOM Website Item,BOM Web Stavka,
BOM Website Operation,BOM Web Operacija,
Operation Time,Operacija Time,
PO-JOB.#####,POZIV. #####,
Timing Detail,Detalji vremena,
Time Logs,Time Dnevnici,
Total Time in Mins,Ukupno vrijeme u minima,
Operation ID,ID operacije,
Transferred Qty,prebačen Kol,
Job Started,Započeo posao,
Started Time,Started Time,
Current Time,Trenutno vrijeme,
Job Card Item,Stavka za karticu posla,
Job Card Time Log,Vremenski dnevnik radne kartice,
Time In Mins,Vrijeme u minutima,
Completed Qty,Završen Kol,
Manufacturing Settings,Proizvodnja Settings,
Raw Materials Consumption,Potrošnja sirovina,
Allow Multiple Material Consumption,Dozvolite višestruku potrošnju materijala,
Backflush Raw Materials Based On,Backflush sirovine na osnovu,
Material Transferred for Manufacture,Materijal za Preneseni Proizvodnja,
Capacity Planning,Planiranje kapaciteta,
Disable Capacity Planning,Onemogući planiranje kapaciteta,
Allow Overtime,Omogućiti Prekovremeni rad,
Allow Production on Holidays,Dopustite Production o praznicima,
Capacity Planning For (Days),Kapacitet planiranje (Dana),
Default Warehouses for Production,Zadane Skladišta za proizvodnju,
Default Work In Progress Warehouse,Uobičajeno Work in Progress Skladište,
Default Finished Goods Warehouse,Uobičajeno Gotovi proizvodi skladište,
Default Scrap Warehouse,Uobičajeno Scrap Warehouse,
Overproduction Percentage For Sales Order,Procenat prekomerne proizvodnje za porudžbinu prodaje,
Overproduction Percentage For Work Order,Procent prekomerne proizvodnje za radni nalog,
Other Settings,Ostale postavke,
Update BOM Cost Automatically,Ažurirajte BOM trošak automatski,
Material Request Plan Item,Zahtev za materijalni zahtev za materijal,
Material Request Type,Materijal Zahtjev Tip,
Material Issue,Materijal Issue,
Customer Provided,Kupac,
Minimum Order Quantity,Minimalna količina narudžbine,
Default Workstation,Uobičajeno Workstation,
Production Plan,Plan proizvodnje,
MFG-PP-.YYYY.-,MFG-PP-YYYY.-,
Get Items From,Get stavke iz,
Get Sales Orders,Kreiraj narudžbe,
Material Request Detail,Zahtev za materijal za materijal,
Get Material Request,Get materijala Upit,
Material Requests,materijal Zahtjevi,
Get Items For Work Order,Dobijte stavke za radni nalog,
Material Request Planning,Planiranje zahtjeva za materijal,
Include Non Stock Items,Uključite stavke bez zaliha,
Include Subcontracted Items,Uključite predmete sa podugovaračima,
Ignore Existing Projected Quantity,Zanemarite postojeću projiciranu količinu,
"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>.","Da biste saznali više o projektovanoj količini, <a href=""https://erpnext.com/docs/user/manual/en/stock/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">kliknite ovdje</a> .",
Download Required Materials,Preuzmite potrebne materijale,
Get Raw Materials For Production,Uzmite sirovine za proizvodnju,
Total Planned Qty,Ukupna planirana količina,
Total Produced Qty,Ukupno proizvedeni količina,
Material Requested,Zahtevani materijal,
Production Plan Item,Proizvodnja plan artikla,
Make Work Order for Sub Assembly Items,Napravite radni nalog za predmete podmontaže,
"If enabled, system will create the work order for the exploded items against which BOM is available.","Ako je omogućeno, sistem će kreirati radni nalog za eksplodirane predmete protiv kojih je BOM dostupan.",
Planned Start Date,Planirani Ozljede Datum,
Quantity and Description,Količina i opis,
material_request_item,material_request_item,
Product Bundle Item,Proizvod Bundle Stavka,
Production Plan Material Request,Proizvodni plan materijala Upit,
Production Plan Sales Order,Proizvodnja plan prodajnog naloga,
Sales Order Date,Datum narudžbe kupca,
Routing Name,Ime rutiranja,
MFG-WO-.YYYY.-,MFG-WO-.YYYY.-,
Item To Manufacture,Artikal za proizvodnju,
Material Transferred for Manufacturing,Materijal Prebačen za izradu,
Manufactured Qty,Proizvedeno Kol,
Use Multi-Level BOM,Koristite multi-level BOM,
Plan material for sub-assemblies,Plan materijal za podsklopove,
Skip Material Transfer to WIP Warehouse,Preskočite transfer materijala u WIP skladište,
Check if material transfer entry is not required,Provjerite da li se ne traži upis prenosa materijala,
Backflush Raw Materials From Work-in-Progress Warehouse,Backflush sirovine iz radnog materijala u skladištu,
Update Consumed Material Cost In Project,Ažurirajte potrošene troškove materijala u projektu,
Warehouses,Skladišta,
This is a location where raw materials are available.,To je mjesto gdje su dostupne sirovine.,
Work-in-Progress Warehouse,Rad u tijeku Warehouse,
This is a location where operations are executed.,Ovo je lokacija na kojoj se izvode operacije.,
This is a location where final product stored.,Ovo je mjesto na kojem se sprema krajnji proizvod.,
Scrap Warehouse,Scrap Skladište,
This is a location where scraped materials are stored.,Ovo je mjesto gdje se čuvaju strugani materijali.,
Required Items,potrebna Predmeti,
Actual Start Date,Stvarni datum početka,
Planned End Date,Planirani Završni datum,
Actual End Date,Stvarni datum završetka,
Operation Cost,Operacija Cost,
Planned Operating Cost,Planirani operativnih troškova,
Actual Operating Cost,Stvarni operativnih troškova,
Additional Operating Cost,Dodatni operativnih troškova,
Total Operating Cost,Ukupni trošak,
Manufacture against Material Request,Proizvodnja protiv Materijal Upit,
Work Order Item,Work Order Item,
Available Qty at Source Warehouse,Dostupno Količina na izvoru Skladište,
Available Qty at WIP Warehouse,Dostupno Količina u WIP Skladište,
Work Order Operation,Operacija rada,
Operation Description,Operacija Opis,
Operation completed for how many finished goods?,Operacija završena za koliko gotovih proizvoda?,
Work in Progress,Radovi u toku,
Estimated Time and Cost,Procijenjena vremena i troškova,
Planned Start Time,Planirani Start Time,
Planned End Time,Planirani End Time,
in Minutes,U minuta,
Actual Time and Cost,Stvarno vrijeme i troškovi,
Actual Start Time,Stvarni Start Time,
Actual End Time,Stvarni End Time,
Updated via 'Time Log',Ažurirano putem 'Time Log',
Actual Operation Time,Stvarni Operation Time,
in Minutes\nUpdated via 'Time Log',u minutama \n ažurirano preko 'Time Log',
(Hour Rate / 60) * Actual Operation Time,(Satnica / 60) * Puna radno vrijeme,
Workstation Name,Ime Workstation,
Production Capacity,Kapacitet proizvodnje,
Operating Costs,Operativni troškovi,
Electricity Cost,Troškovi struje,
per hour,na sat,
Consumable Cost,potrošni cost,
Rent Cost,Rent cost,
Wages,Plata,
Wages per hour,Plaće po satu,
Net Hour Rate,Neto Hour Rate,
Workstation Working Hour,Workstation Radno vrijeme,
Certification Application,Aplikacija za sertifikaciju,
Name of Applicant,Ime podnosioca zahteva,
Certification Status,Status certifikacije,
Yet to appear,Još uvek se pojavljuje,
Certified,Certified,
Not Certified,Nije sertifikovan,
USD,Američki dolar,
INR,INR,
Certified Consultant,Certified Consultant,
Name of Consultant,Ime konsultanta,
Certification Validity,Validnost sertifikacije,
Discuss ID,Diskutujte ID,
GitHub ID,GitHub ID,
Non Profit Manager,Neprofitni menadžer,
Chapter Head,Glava poglavlja,
Meetup Embed HTML,Upoznajte Embed HTML,
chapters/chapter_name\nleave blank automatically set after saving chapter.,poglavlja / chapter_name ostavite prazno automatski nakon podešavanja poglavlja.,
Chapter Members,Članovi poglavlja,
Members,Članovi,
Chapter Member,Član poglavlja,
Website URL,Website URL,
Leave Reason,Ostavite razlog,
Donor Name,Ime donatora,
Donor Type,Tip donatora,
Withdrawn,povučen,
Grant Application Details ,Grant Application Details,
Grant Description,Grant Opis,
Requested Amount,Traženi iznos,
Has any past Grant Record,Ima bilo kakav prošli Grant Record,
Show on Website,Show on Website,
Assessment  Mark (Out of 10),Oznaka ocene (od 10),
Assessment  Manager,Menadžer procjene,
Email Notification Sent,Poslato obaveštenje o pošti,
NPO-MEM-.YYYY.-,NPO-MEM-.YYYY.-,
Membership Expiry Date,Datum isteka članstva,
Razorpay Details,Razorpay Detalji,
Subscription ID,ID pretplate,
Customer ID,ID kupca,
Subscription Activated,Pretplata aktivirana,
Subscription Start ,Početak pretplate,
Subscription End,Kraj pretplate,
Non Profit Member,Član neprofitne organizacije,
Membership Status,Status članstva,
Member Since,Član od,
Payment ID,ID plaćanja,
Membership Settings,Postavke članstva,
Enable RazorPay For Memberships,Omogućite RazorPay za članstva,
RazorPay Settings,Postavke RazorPay-a,
Billing Cycle,Ciklus naplate,
Billing Frequency,Učestalost naplate,
"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.","Broj obračunskih ciklusa za koji se kupcu treba naplatiti. Na primjer, ako kupac kupuje jednogodišnje članstvo koje bi trebalo naplaćivati mjesečno, ova vrijednost trebala bi biti 12.",
Razorpay Plan ID,ID plana za Razorpay,
Volunteer Name,Ime volontera,
Volunteer Type,Volonterski tip,
Availability and Skills,Dostupnost i vještine,
Availability,Dostupnost,
Weekends,Vikendi,
Availability Timeslot,Availability Timeslot,
Morning,Jutro,
Afternoon,Popodne,
Evening,Veče,
Anytime,Uvek,
Volunteer Skills,Volonterske veštine,
Volunteer Skill,Volonterska vještina,
Homepage,homepage,
Hero Section Based On,Odjeljak za heroje zasnovan na,
Homepage Section,Odjeljak početne stranice,
Hero Section,Sekcija heroja,
Tag Line,Tag Line,
Company Tagline for website homepage,Kompanija Tagline za web stranice homepage,
Company Description for website homepage,Kompanija Opis za web stranice homepage,
Homepage Slideshow,Prezentacija početne stranice,
"URL for ""All Products""",URL za &quot;Svi proizvodi&quot;,
Products to be shown on website homepage,Proizvodi koji će biti prikazan na sajtu homepage,
Homepage Featured Product,Homepage Istaknuti proizvoda,
route,ruta,
Section Based On,Odeljak na osnovu,
Section Cards,Karte odsjeka,
Number of Columns,Broj stupaca,
Number of columns for this section. 3 cards will be shown per row if you select 3 columns.,Broj stupaca za ovaj odjeljak. Po 3 kartice prikazat će se u svakom retku ako odaberete 3 stupca.,
Section HTML,Odjeljak HTML,
Use this field to render any custom HTML in the section.,Upotrijebite ovo polje za prikaz bilo kojeg prilagođenog HTML-a u odjeljku.,
Section Order,Odredba odjeljka,
"Order in which sections should appear. 0 is first, 1 is second and so on.","Redoslijed u kojim će se odjeljcima pojaviti. 0 je prvo, 1 je drugo itd.",
Homepage Section Card,Kartica odsjeka za početnu stranicu,
Subtitle,Podnaslov,
Products Settings,Proizvodi Postavke,
Home Page is Products,Početna stranica su proizvodi,
"If checked, the Home page will be the default Item Group for the website","Ako je označeno, na početnu stranicu će biti default Stavka grupe za web stranicu",
Show Availability Status,Prikaži status dostupnosti,
Product Page,Stranica proizvoda,
Products per Page,Proizvodi po stranici,
Enable Field Filters,Omogući filtre polja,
Item Fields,Polja predmeta,
Enable Attribute Filters,Omogući filtre atributa,
Attributes,Atributi,
Hide Variants,Sakrij varijante,
Website Attribute,Atributi web lokacije,
Attribute,Atribut,
Website Filter Field,Polje filtera za web stranicu,
Activity Cost,Aktivnost troškova,
Billing Rate,Billing Rate,
Costing Rate,Costing Rate,
title,naslov,
Projects User,Projektni korisnik,
Default Costing Rate,Uobičajeno Costing Rate,
Default Billing Rate,Uobičajeno Billing Rate,
Dependent Task,Zavisna Task,
Project Type,Vrsta projekta,
% Complete Method,% Complete Način,
Task Completion,zadatak Završetak,
Task Progress,zadatak Napredak,
% Completed,Završen%,
From Template,Iz šablona,
Project will be accessible on the website to these users,Projekt će biti dostupna na web stranici ovih korisnika,
Copied From,kopira iz,
Start and End Dates,Datume početka i završetka,
Actual Time in Hours (via Timesheet),Stvarno vrijeme (u satima),
Costing and Billing,Cijena i naplata,
Total Costing Amount (via Timesheet),Ukupni iznos troškova (preko Timesheeta),
Total Expense Claim (via Expense Claim),Ukupni rashodi potraživanja (preko rashodi potraživanja),
Total Purchase Cost (via Purchase Invoice),Ukupno TROŠKA (preko fakturi),
Total Sales Amount (via Sales Order),Ukupan iznos prodaje (preko prodajnog naloga),
Total Billable Amount (via Timesheet),Ukupan iznos iznosa (preko Timesheeta),
Total Billed Amount (via Sales Invoice),Ukupan fakturisani iznos (preko faktura prodaje),
Total Consumed Material Cost (via Stock Entry),Ukupni troškovi potrošnje materijala (preko zaliha zaliha),
Gross Margin,Bruto marža,
Gross Margin %,Bruto marža %,
Monitor Progress,Napredak monitora,
Collect Progress,Prikupi napredak,
Frequency To Collect Progress,Frekvencija za sakupljanje napretka,
Twice Daily,Twice Daily,
First Email,Prva e-pošta,
Second Email,Druga e-pošta,
Time to send,Vreme za slanje,
Day to Send,Dan za slanje,
Message will be sent to the users to get their status on the Project,Korisnicima će se poslati poruka da dobiju svoj status na Projektu,
Projects Manager,Projektni menadzer,
Project Template,Predložak projekta,
Project Template Task,Zadatak predloška projekta,
Begin On (Days),Početak (dani),
Duration (Days),Trajanje (dani),
Project Update,Ažuriranje projekta,
Project User,Korisnik projekta,
View attachments,Pregledajte priloge,
Projects Settings,Postavke projekata,
Ignore Workstation Time Overlap,Prezreti vremensko preklapanje radne stanice,
Ignore User Time Overlap,Isključiti preklapanje korisničkog vremena,
Ignore Employee Time Overlap,Prezreti vremensko preklapanje radnika,
Weight,težina,
Parent Task,Zadatak roditelja,
Timeline,Vremenska linija,
Expected Time (in hours),Očekivano trajanje (u satima),
% Progress,% Napredak,
Is Milestone,je Milestone,
Task Description,Opis zadatka,
Dependencies,Zavisnosti,
Dependent Tasks,Zavisni zadaci,
Depends on Tasks,Ovisi o Zadaci,
Actual Start Date (via Timesheet),Stvarni Ozljede Datum (preko Time Sheet),
Actual Time in Hours (via Timesheet),Stvarno vrijeme (u satima),
Actual End Date (via Timesheet),Stvarni Završni datum (preko Time Sheet),
Total Expense Claim (via Expense Claim),Ukupni rashodi potraživanja (preko rashodi potraživanje),
Review Date,Datum pregleda,
Closing Date,Datum zatvaranja,
Task Depends On,Zadatak ovisi o,
Task Type,Tip zadatka,
TS-.YYYY.-,TS-.YYYY.-,
Employee Detail,Detalji o radniku,
Billing Details,Billing Detalji,
Total Billable Hours,Ukupno naplative Hours,
Total Billed Hours,Ukupno Fakturisana Hours,
Total Costing Amount,Ukupno Costing iznos,
Total Billable Amount,Ukupno naplative iznos,
Total Billed Amount,Ukupno Fakturisana iznos,
% Amount Billed,% Naplaćenog iznosa,
Hrs,Hrs,
Costing Amount,Costing Iznos,
Corrective/Preventive,Korektivni / preventivni,
Corrective,Korektiv,
Preventive,Preventivno,
Resolution,Rezolucija,
Resolutions,Rezolucije,
Quality Action Resolution,Kvalitetna rezolucija akcije,
Quality Feedback Parameter,Parametar povratne informacije o kvalitetu,
Quality Feedback Template Parameter,Parametar predloška za povratne informacije o kvalitetu,
Quality Goal,Cilj kvaliteta,
Monitoring Frequency,Frekvencija praćenja,
Weekday,Radnim danom,
Objectives,Ciljevi,
Quality Goal Objective,Cilj kvaliteta kvaliteta,
Objective,Cilj,
Agenda,Dnevni red,
Minutes,Minute,
Quality Meeting Agenda,Agenda za kvalitetni sastanak,
Quality Meeting Minutes,Zapisnici sa kvalitetom sastanka,
Minute,Minuta,
Parent Procedure,Postupak roditelja,
Processes,Procesi,
Quality Procedure Process,Proces postupka kvaliteta,
Process Description,Opis procesa,
Link existing Quality Procedure.,Povežite postojeći postupak kvaliteta.,
Additional Information,Dodatne informacije,
Quality Review Objective,Cilj pregleda kvaliteta,
DATEV Settings,Postavke DATEV-a,
Regional,regionalni,
Consultant ID,ID konsultanta,
GST HSN Code,PDV HSN Kod,
HSN Code,HSN Kod,
GST Settings,PDV Postavke,
GST Summary,PDV Pregled,
GSTIN Email Sent On,GSTIN mail poslan,
GST Accounts,GST računi,
B2C Limit,B2C Limit,
Set Invoice Value for B2C. B2CL and B2CS calculated based on this invoice value.,Postavite vrednost fakture za B2C. B2CL i B2CS izračunati na osnovu ove fakture vrednosti.,
GSTR 3B Report,GSTR 3B Izvještaj,
January,Januar,
February,februar,
March,Marta,
April,Aprila,
August,Avgusta,
September,Septembra,
October,Oktobar,
November,Novembra,
December,Prosinca,
JSON Output,Izlaz JSON,
Invoices with no Place Of Supply,Računi bez mjesta opskrbe,
Import Supplier Invoice,Uvoz fakture dobavljača,
Invoice Series,Serija fakture,
Upload XML Invoices,Pošaljite XML fakture,
Zip File,Zip File,
Import Invoices,Uvoz računa,
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.,Kliknite gumb Uvezi račune nakon što se dokument pridruži. Sve pogreške povezane s obradom bit će prikazane u dnevniku grešaka.,
Lower Deduction Certificate,Potvrda o nižem odbitku,
Certificate Details,Detalji certifikata,
194A,194A,
194C,194C,
194D,194D,
194H,194H,
194I,194I,
194J,194J,
194LA,194LA,
194LBB,194LBB,
194LBC,194LBC,
Certificate No,Potvrda br,
Deductee Details,Detalji o odbitku,
PAN No,PAN br,
Validity Details,Detalji valjanosti,
Rate Of TDS As Per Certificate,Stopa TDS-a prema certifikatu,
Certificate Limit,Ograničenje certifikata,
Invoice Series Prefix,Prefix serije računa,
Active Menu,Aktivni meni,
Restaurant Menu,Restoran meni,
Price List (Auto created),Cenovnik (Automatski kreiran),
Restaurant Manager,Restoran menadžer,
Restaurant Menu Item,Restoran Menu Item,
Restaurant Order Entry,Restoran za unos naloga,
Restaurant Table,Restoran Stol,
Click Enter To Add,Kliknite Enter za dodavanje,
Last Sales Invoice,Poslednja prodaja faktura,
Current Order,Trenutna porudžbina,
Restaurant Order Entry Item,Restoran za unos stavke,
Served,Servirano,
Restaurant Reservation,Rezervacija restorana,
Waitlisted,Waitlisted,
No Show,Ne Show,
No of People,Broj ljudi,
Reservation Time,Vrijeme rezervacije,
Reservation End Time,Vreme završetka rezervacije,
No of Seats,Broj sedišta,
Minimum Seating,Minimalno sedenje,
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Pratite prodajne kampanje. Pratite Lead-ove, Ponude, Porudžbenice itd iz Kampanje i procijeniti povrat investicije.",
SAL-CAM-.YYYY.-,SAL-CAM-YYYY.-,
Campaign Schedules,Rasporedi kampanje,
Buyer of Goods and Services.,Kupac robe i usluga.,
CUST-.YYYY.-,CUST-YYYY.-,
Default Company Bank Account,Bankovni račun kompanije,
From Lead,Od Lead-a,
Account Manager,Menadžer računa,
Allow Sales Invoice Creation Without Sales Order,Omogućite stvaranje fakture za prodaju bez naloga za prodaju,
Allow Sales Invoice Creation Without Delivery Note,Dozvoli stvaranje fakture za prodaju bez napomene o isporuci,
Default Price List,Zadani cjenik,
Primary Address and Contact Detail,Primarna adresa i kontakt detalji,
"Select, to make the customer searchable with these fields",Izaberite da biste potrošaču omogućili pretragu sa ovim poljima,
Customer Primary Contact,Primarni kontakt klijenta,
"Reselect, if the chosen contact is edited after save","Ponovo izaberi, ako je odabrani kontakt uređen nakon čuvanja",
Customer Primary Address,Primarna adresa klijenta,
"Reselect, if the chosen address is edited after save","Ponovo odaberite, ako je izabrana adresa uređena nakon čuvanja",
Primary Address,Primarna adresa,
Mention if non-standard receivable account,Spomenuti ako nestandardni potraživanja račun,
Credit Limit and Payment Terms,Kreditni limit i uslovi plaćanja,
Additional information regarding the customer.,Dodatne informacije o kupcu.,
Sales Partner and Commission,Prodajnog partnera i Komisije,
Commission Rate,Komisija Stopa,
Sales Team Details,Prodaja Team Detalji,
Customer POS id,Korisnički POS id,
Customer Credit Limit,Limit za klijenta,
Bypass Credit Limit Check at Sales Order,Provjerite kreditni limit za obilaznicu na nalogu za prodaju,
Industry Type,Industrija Tip,
MAT-INS-.YYYY.-,MAT-INS-.YYYY.-,
Installation Date,Instalacija Datum,
Installation Time,Vrijeme instalacije,
Installation Note Item,Napomena instalacije proizvoda,
Installed Qty,Instalirana kol,
Lead Source,Izvor potencijalnog kupca,
Period Start Date,Datum početka perioda,
Period End Date,Datum završetka perioda,
Cashier,Blagajna,
Difference,Razlika,
Modes of Payment,Načini plaćanja,
Linked Invoices,Povezane fakture,
POS Closing Voucher Details,POS Closing Voucher Detalji,
Collected Amount,Prikupljeni iznos,
Expected Amount,Očekivani iznos,
POS Closing Voucher Invoices,POS zaključavanje vaučera,
Quantity of Items,Količina predmeta,
"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","Agregat grupa ** Predmeti ** u drugu ** Stavka **. Ovo je korisno ako se vezanje određenog ** Predmeti ** u paketu i održavanje zaliha na upakovane ** Predmeti ** a ne agregata ** Stavka **. Paket ** ** Stavka će imati &quot;Je Stock Stavka&quot; kao &quot;ne&quot; i &quot;Da li je prodaja Stavka&quot; kao &quot;Da&quot;. Na primjer: Ako se prodaje laptopa i Ruksaci odvojeno i imaju posebnu cijenu ako kupac kupuje obje, onda Laptop + Ruksak će biti novi Bundle proizvoda stavku. Napomena: BOM = Bill of Materials",
Parent Item,Roditelj artikla,
List items that form the package.,Popis stavki koje čine paket.,
SAL-QTN-.YYYY.-,SAL-QTN-YYYY-,
Quotation To,Ponuda za,
Rate at which customer's currency is converted to company's base currency,Stopa po kojoj se valuta klijenta se pretvaraju u tvrtke bazne valute,
Rate at which Price list currency is converted to company's base currency,Stopa po kojoj Cjenik valute se pretvaraju u tvrtke bazne valute,
Additional Discount and Coupon Code,Dodatni popust i kod kupona,
Referral Sales Partner,Preporuka prodajni partner,
In Words will be visible once you save the Quotation.,U riječi će biti vidljiv nakon što spremite ponudu.,
Term Details,Oročeni Detalji,
Quotation Item,Artikl iz ponude,
Against Doctype,Protiv DOCTYPE,
Against Docname,Protiv Docname,
Additional Notes,Dodatne napomene,
SAL-ORD-.YYYY.-,SAL-ORD-YYYY.-,
Skip Delivery Note,Preskočite dostavnicu,
In Words will be visible once you save the Sales Order.,U riječi će biti vidljiv nakon što spremite prodajnog naloga.,
Track this Sales Order against any Project,Prati ovu porudzbinu na svim Projektima,
Billing and Delivery Status,Obračun i Status isporuke,
Not Delivered,Ne Isporučeno,
Fully Delivered,Potpuno Isporučeno,
Partly Delivered,Djelomično Isporučeno,
Not Applicable,Nije primjenjivo,
%  Delivered,Isporučeno%,
% of materials delivered against this Sales Order,% Materijala dostavljenih od ovog prodajnog naloga,
% of materials billed against this Sales Order,% Materijala naplaćeno protiv ovog prodajnog naloga,
Not Billed,Ne Naplaćeno,
Fully Billed,Potpuno Naplaćeno,
Partly Billed,Djelomično Naplaćeno,
Ensure Delivery Based on Produced Serial No,Osigurati isporuku zasnovanu na serijskom br,
Supplier delivers to Customer,Dobavljač dostavlja kupaca,
Delivery Warehouse,Isporuka Skladište,
Planned Quantity,Planirana količina,
For Production,Za proizvodnju,
Work Order Qty,Work Order Količina,
Produced Quantity,Proizvedena količina,
Used for Production Plan,Koristi se za plan proizvodnje,
Sales Partner Type,Vrsta prodajnog partnera,
Contact No.,Kontakt broj,
Contribution (%),Doprinos (%),
Contribution to Net Total,Doprinos neto Ukupno,
Selling Settings,Podešavanja prodaje,
Settings for Selling Module,Postavke za prodaju modul,
Customer Naming By,Kupac Imenovanje By,
Campaign Naming By,Imenovanje kampanja po,
Default Customer Group,Zadana grupa korisnika,
Default Territory,Zadani teritorij,
Close Opportunity After Days,Zatvori Opportunity Nakon nekoliko dana,
Default Quotation Validity Days,Uobičajeni dani valute kvotiranja,
Sales Update Frequency,Frekvencija ažuriranja prodaje,
Each Transaction,Svaka transakcija,
SMS Center,SMS centar,
Send To,Pošalji na adresu,
All Contact,Svi kontakti,
All Customer Contact,Svi kontakti kupaca,
All Supplier Contact,Svi kontakti dobavljača,
All Sales Partner Contact,Svi kontakti distributera,
All Lead (Open),Svi potencijalni kupci (aktualni),
All Employee (Active),Svi zaposleni (aktivni),
All Sales Person,Svi prodavači,
Create Receiver List,Kreiraj listu primalaca,
Receiver List,Lista primalaca,
Messages greater than 160 characters will be split into multiple messages,Poruka veća od 160 karaktera će biti odvojena u više poruka,
Total Characters,Ukupno Likovi,
Total Message(s),Ukupno poruka ( i),
Authorization Control,Odobrenje kontrole,
Authorization Rule,Autorizacija Pravilo,
Average Discount,Prosječni popust,
Customerwise Discount,Customerwise Popust,
Itemwise Discount,Itemwise Popust,
Customer or Item,Kupac ili stavka,
Customer / Item Name,Kupac / Stavka Ime,
Authorized Value,Ovlašteni Vrijednost,
Applicable To (Role),Odnosi se na (uloga),
Applicable To (Employee),Odnosi se na (Radnik),
Applicable To (User),Odnosi se na (Upute),
Applicable To (Designation),Odnosi se na (Oznaka),
Approving Role (above authorized value),Odobravanje ulogu (iznad ovlašteni vrijednost),
Approving User  (above authorized value),Odobravanje korisnika (iznad ovlašteni vrijednost),
Brand Defaults,Podrazumevane robne marke,
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Pravna osoba / Podružnica sa zasebnim kontnom pripadaju Organizacije.,
Change Abbreviation,Promijeni Skraćenica,
Parent Company,Matična kompanija,
Default Values,Default vrijednosti,
Default Holiday List,Uobičajeno Holiday List,
Default Selling Terms,Uobičajeni prodajni uslovi,
Default Buying Terms,Uvjeti kupnje,
Create Chart Of Accounts Based On,Napravite Kontni plan na osnovu,
Standard Template,standard Template,
Existing Company,Postojeća kompanija,
Chart Of Accounts Template,Kontni plan Template,
Existing Company ,postojeći Company,
Date of Establishment,Datum uspostavljanja,
Sales Settings,Postavke prodaje,
Monthly Sales Target,Mesečni cilj prodaje,
Sales Monthly History,Prodaja mesečne istorije,
Transactions Annual History,Godišnja istorija transakcija,
Total Monthly Sales,Ukupna mesečna prodaja,
Default Cash Account,Zadani novčani račun,
Default Receivable Account,Uobičajeno Potraživanja račun,
Round Off Cost Center,Zaokružimo troškova Center,
Discount Allowed Account,Dopušten popust,
Discount Received Account,Račun primljen na popust,
Exchange Gain / Loss Account,Exchange dobitak / gubitak računa,
Unrealized Exchange Gain/Loss Account,Nerealizirani račun za dobitak / gubitak,
Allow Account Creation Against Child Company,Dozvolite otvaranje računa protiv kompanije Child,
Default Payable Account,Uobičajeno računa se plaća,
Default Employee Advance Account,Uobičajeni uposni račun zaposlenog,
Default Cost of Goods Sold Account,Uobičajeno Nabavna vrednost prodate robe računa,
Default Income Account,Zadani račun prihoda,
Default Deferred Revenue Account,Podrazumevani odloženi porezni račun,
Default Deferred Expense Account,Podrazumevani odloženi račun za troškove,
Default Payroll Payable Account,Uobičajeno zarade plaćaju nalog,
Default Expense Claim Payable Account,Podrazumevani troškovi potraživanja,
Stock Settings,Stock Postavke,
Enable Perpetual Inventory,Omogućiti vječni zaliha,
Default Inventory Account,Uobičajeno zaliha računa,
Stock Adjustment Account,Stock Adjustment račun,
Fixed Asset Depreciation Settings,Osnovnih sredstava Amortizacija Postavke,
Series for Asset Depreciation Entry (Journal Entry),Serija za unos sredstava za amortizaciju (dnevnik),
Gain/Loss Account on Asset Disposal,Dobitak / gubitak računa na Asset Odlaganje,
Asset Depreciation Cost Center,Asset Amortizacija troškova Center,
Budget Detail,Proračun Detalj,
Exception Budget Approver Role,Izuzetna budžetska uloga odobravanja,
Company Info,Podaci o preduzeću,
For reference only.,Za referencu samo.,
Company Logo,Logo kompanije,
Date of Incorporation,Datum osnivanja,
Date of Commencement,Datum početka,
Phone No,Telefonski broj,
Company Description,Opis preduzeća,
Registration Details,Registracija Brodu,
Company registration numbers for your reference. Tax numbers etc.,Tvrtka registracijski brojevi za svoju referencu. Porezni brojevi itd.,
Delete Company Transactions,Izbrišite Company Transakcije,
Currency Exchange,Mjenjačnica,
Specify Exchange Rate to convert one currency into another,Odredite Exchange Rate pretvoriti jedne valute u drugu,
From Currency,Od novca,
To Currency,Valutno,
For Buying,Za kupovinu,
For Selling,Za prodaju,
Customer Group Name,Naziv vrste djelatnosti Kupca,
Parent Customer Group,Roditelj Kupac Grupa,
Only leaf nodes are allowed in transaction,Samo leaf čvorovi su dozvoljeni u transakciji,
Mention if non-standard receivable account applicable,Spomenite ako nestandardnih potraživanja računa važećim,
Credit Limits,Kreditni limiti,
Email Digest,E-pošta,
Send regular summary reports via Email.,Pošalji redovne zbirne izvještaje putem e-maila.,
Email Digest Settings,E-pošta Postavke,
How frequently?,Koliko često?,
Next email will be sent on:,Sljedeća e-mail će biti poslan na:,
Note: Email will not be sent to disabled users,Napomena: E-mail neće biti poslan invalide,
Profit & Loss,Dobiti i gubitka,
New Income,novi prihod,
New Expenses,novi Troškovi,
Annual Income,Godišnji prihod,
Annual Expenses,Godišnji troškovi,
Bank Balance,Banka Balance,
Bank Credit Balance,Kreditni saldo banke,
Receivables,Potraživanja,
Payables,Obveze,
Sales Orders to Bill,Prodajni nalogi za Bill,
Purchase Orders to Bill,Narudžbe za kupovinu,
New Sales Orders,Nove narudžbenice,
New Purchase Orders,Novi narudžbenice kupnje,
Sales Orders to Deliver,Prodajna narudžbina za isporuku,
Purchase Orders to Receive,Narudžbe za kupovinu,
New Purchase Invoice,Nova faktura za kupovinu,
New Quotations,Nove ponude,
Open Quotations,Open Quotations,
Open Issues,Otvorena izdanja,
Open Projects,Otvoreni projekti,
Purchase Orders Items Overdue,Nalozi za kupovinu narudžbine,
Upcoming Calendar Events,Nadolazeći kalendarski događaji,
Open To Do,Otvoreno za obaviti,
Add Quote,Dodaj Citat,
Global Defaults,Globalne zadane postavke,
Default Company,Zadana tvrtka,
Current Fiscal Year,Tekuće fiskalne godine,
Default Distance Unit,Podrazumevana jedinica udaljenosti,
Hide Currency Symbol,Sakrij simbol valute,
Do not show any symbol like $ etc next to currencies.,Ne pokazati nikakav simbol poput $ iza valute.,
"If disable, 'Rounded Total' field will not be visible in any transaction","Ako onemogućite, &#39;Ukupno&#39; Zaobljeni polje neće biti vidljiv u bilo kojoj transakciji",
Disable In Words,Onemogućena u Words,
"If disable, 'In Words' field will not be visible in any transaction","Ako onemogućite, &#39;riječima&#39; polju neće biti vidljivi u bilo koju transakciju",
Item Classification,Stavka Klasifikacija,
General Settings,General Settings,
Item Group Name,Naziv grupe artikla,
Parent Item Group,Roditelj artikla Grupa,
Item Group Defaults,Podrazumevana postavka grupe,
Item Tax,Porez artikla,
Check this if you want to show in website,Označite ovo ako želite pokazati u web,
Show this slideshow at the top of the page,Prikaži ovaj slideshow na vrhu stranice,
HTML / Banner that will show on the top of product list.,HTML / baner koji će se prikazivati na vrhu liste proizvoda.,
Set prefix for numbering series on your transactions,Postavite prefiks za numeriranje niza na svoje transakcije,
Setup Series,Postavljanje Serija,
Select Transaction,Odaberite transakciju,
Help HTML,HTML pomoć,
Series List for this Transaction,Serija Popis za ovu transakciju,
User must always select,Korisničko uvijek mora odabrati,
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Označite ovo ako želite prisiliti korisniku odabir seriju prije spremanja. Tu će biti zadana ako to provjerili.,
Update Series,Update serija,
Change the starting / current sequence number of an existing series.,Promjena polaznu / tekući redni broj postojeće serije.,
Prefix,Prefiks,
This is the number of the last created transaction with this prefix,To je broj zadnjeg stvorio transakcije s ovim prefiksom,
Update Series Number,Update serije Broj,
Quotation Lost Reason,Razlog nerealizirane ponude,
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,A treće strane distributera / trgovca / komisije agent / affiliate / prodavače koji prodaje kompanije proizvoda za proviziju.,
Sales Partner Name,Prodaja Ime partnera,
Partner Type,Partner Tip,
Address & Contacts,Adresa i kontakti,
Address Desc,Adresa silazno,
Contact Desc,Kontakt ukratko,
Sales Partner Target,Prodaja partner Target,
Targets,Mete,
Show In Website,Pokaži Na web stranice,
Referral Code,Kod preporuke,
To Track inbound purchase,Da biste pratili ulaznu kupovinu,
Logo,Logo,
Partner website,website partner,
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,"Sve Sales Transakcije mogu biti označena protiv više osoba ** ** Sales, tako da možete postaviti i pratiti ciljeve.",
Name and Employee ID,Ime i ID zaposlenika,
Sales Person Name,Ime referenta prodaje,
Parent Sales Person,Roditelj Prodaja Osoba,
Select company name first.,Prvo odaberite naziv preduzeća.,
Sales Person Targets,Prodaje osobi Mete,
Set targets Item Group-wise for this Sales Person.,Set cilja predmet Grupa-mudar za ovaj prodavač.,
Supplier Group Name,Ime grupe dobavljača,
Parent Supplier Group,Matična grupa dobavljača,
Target Detail,Ciljana Detalj,
Target Qty,Ciljana Kol,
Target  Amount,Ciljani iznos,
Target Distribution,Ciljana Distribucija,
"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.","Standardnim uvjetima koji se mogu dodati da prodaje i kupovine.\n\n Primjeri: \n\n 1. Valjanost ponude.\n 1. Uslovi plaćanja (unaprijed, na kredit, dio unaprijed itd).\n 1. Što je extra (ili na teret kupca).\n 1. Sigurnost / Upozorenje korištenje.\n 1. Jamstvo ako ih ima.\n 1. Vraća politike.\n 1. Uvjeti shipping, ako je primjenjivo.\n 1. Načini adresiranja sporova, naknadu štete, odgovornosti, itd \n 1. Adresu i kontakt vaše kompanije.",
Applicable Modules,Primjenjivi moduli,
Terms and Conditions Help,Uslovi Pomoć,
Classification of Customers by region,Klasifikacija Kupci po regiji,
Territory Name,Regija Ime,
Parent Territory,Roditelj Regija,
Territory Manager,Manager teritorije,
For reference,Za referencu,
Territory Targets,Teritorij Mete,
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Postavite Stavka Grupa-mudre proračune na ovom području. Također možete uključiti sezonalnost postavljanjem Distribution.,
UOM Name,UOM Ime,
Check this to disallow fractions. (for Nos),Provjerite to da ne dopušta frakcija. (Za br),
Website Item Group,Web stranica artikla Grupa,
Cross Listing of Item in multiple groups,Cross Oglas tačke u više grupa,
Default settings for Shopping Cart,Početne postavke za Košarica,
Enable Shopping Cart,Enable Košarica,
Display Settings,Podešavanja izgleda,
Show Public Attachments,Pokaži Javna Prilozi,
Show Price,Prikaži cijene,
Show Stock Availability,Show Stock Availability,
Show Contact Us Button,Prikaži gumb Kontaktirajte nas,
Show Stock Quantity,Show Stock Quantity,
Show Apply Coupon Code,Prikaži Primjeni kod kupona,
Allow items not in stock to be added to cart,Dopustite da se dodaju u košaricu artikli koji nisu na zalihama,
Prices will not be shown if Price List is not set,Cijene neće biti prikazan ako nije postavljena Cjenik,
Quotation Series,Citat serije,
Checkout Settings,Plaćanje Postavke,
Enable Checkout,Enable Checkout,
Payment Success Url,Plaćanje Uspjeh URL,
After payment completion redirect user to selected page.,Nakon završetka uplate preusmjeriti korisnika na odabrani stranicu.,
Batch Details,Detalji serije,
Batch ID,ID serije,
image,slika,
Parent Batch,roditelja Batch,
Manufacturing Date,Datum proizvodnje,
Batch Quantity,Serijska količina,
Batch UOM,Batch UOM,
Source Document Type,Izvor Document Type,
Source Document Name,Izvor Document Name,
Batch Description,Batch Opis,
Bin,Kanta,
Reserved Quantity,Rezervirano Količina,
Actual Quantity,Stvarna količina,
Requested Quantity,Tražena količina,
Reserved Qty for sub contract,Rezervisana količina za pod ugovorom,
Moving Average Rate,Premještanje prosječna stopa,
FCFS Rate,FCFS Stopa,
Customs Tariff Number,Carinski tarifni broj,
Tariff Number,tarifni broj,
Delivery To,Dostava za,
MAT-DN-.YYYY.-,MAT-DN-YYYY.-,
Is Return,Je li povratak,
Issue Credit Note,Izdajte kreditnu poruku,
Return Against Delivery Note,Vratiti protiv Isporuka Napomena,
Customer's Purchase Order No,Kupca Narudžbenica br,
Billing Address Name,Naziv adrese za naplatu,
Required only for sample item.,Potrebna je samo za primjer stavke.,
"If you have created a standard template in Sales Taxes and Charges Template, select one and click on the button below.","Ako ste kreirali standardni obrazac u prodaji poreza i naknada Template, odaberite jednu i kliknite na dugme ispod.",
In Words will be visible once you save the Delivery Note.,Riječima će biti vidljivo nakon što spremite otpremnicu.,
In Words (Export) will be visible once you save the Delivery Note.,Riječima (izvoz) će biti vidljivo nakon što spremite otpremnicu.,
Transporter Info,Transporter Info,
Driver Name,Ime vozača,
Track this Delivery Note against any Project,Prati ovu napomenu o isporuci na svim Projektima,
Inter Company Reference,Inter Company Reference,
Print Without Amount,Ispis Bez visini,
% Installed,Instalirano%,
% of materials delivered against this Delivery Note,% Materijala dostavljenih protiv ove otpremnici,
Installation Status,Status instalacije,
Excise Page Number,Trošarina Broj stranice,
Instructions,Instrukcije,
From Warehouse,Od Skladište,
Against Sales Order,Protiv prodajnog naloga,
Against Sales Order Item,Protiv naloga prodaje Item,
Against Sales Invoice,Protiv prodaje fakture,
Against Sales Invoice Item,Protiv prodaje fakture Item,
Available Batch Qty at From Warehouse,Dostupno Batch Količina na Od Skladište,
Available Qty at From Warehouse,Dostupno Količina na Od Skladište,
Delivery Settings,Postavke isporuke,
Dispatch Settings,Dispečerske postavke,
Dispatch Notification Template,Šablon za obavještenje o otpremi,
Dispatch Notification Attachment,Prilog za obavještenje o otpremi,
Leave blank to use the standard Delivery Note format,Ostavite prazno da biste koristili standardni format isporuke,
Send with Attachment,Pošaljite sa Prilogom,
Delay between Delivery Stops,Kašnjenje između prekida isporuke,
Delivery Stop,Dostava Stop,
Lock,Zaključati,
Visited,Posjetio,
Order Information,Informacije o porudžbini,
Contact Information,Kontakt informacije,
Email sent to,E-mail poslat,
Dispatch Information,Informacije o otpremi,
Estimated Arrival,Procijenjeni dolazak,
MAT-DT-.YYYY.-,MAT-DT-YYYY.-,
Initial Email Notification Sent,Poslato je prvo obaveštenje o e-mailu,
Delivery Details,Detalji isporuke,
Driver Email,E-adresa vozača,
Driver Address,Adresa vozača,
Total Estimated Distance,Ukupna procenjena rastojanja,
Distance UOM,Udaljenost UOM,
Departure Time,Vrijeme odlaska,
Delivery Stops,Dostava je prestala,
Calculate Estimated Arrival Times,Izračunajte procenjene vremenske prilike,
Use Google Maps Direction API to calculate estimated arrival times,Koristite API za Google Maps Direction za izračunavanje predviđenih vremena dolaska,
Optimize Route,Optimizirajte rutu,
Use Google Maps Direction API to optimize route,Koristite API za usmjeravanje Google Maps za optimizaciju rute,
In Transit,U prolazu,
Fulfillment User,Fulfillment User,
"A Product or a Service that is bought, sold or kept in stock.","Proizvoda ili usluge koja je kupio, prodati ili držati u čoporu.",
STO-ITEM-.YYYY.-,STO-ITEM-.YYYY.-,
Variant Of,Variant Of,
"If item is a variant of another item then description, image, pricing, taxes etc will be set from the template unless explicitly specified","Ako proizvod varijanta druge stavke onda opis, slike, cijene, poreze itd će biti postavljena iz predloška, osim ako izričito navedeno",
Is Item from Hub,Je stavka iz Hub-a,
Default Unit of Measure,Zadana mjerna jedinica,
Maintain Stock,Održavati Stock,
Standard Selling Rate,Standard prodajni kurs,
Auto Create Assets on Purchase,Automatski kreirajte sredstva prilikom kupovine,
Asset Naming Series,Serija imenovanja imovine,
Over Delivery/Receipt Allowance (%),Nadoknada za isporuku / primanje (%),
Barcodes,Barkodovi,
Shelf Life In Days,Rok trajanja u danima,
End of Life,Kraj života,
Default Material Request Type,Uobičajeno materijala Upit Tip,
Valuation Method,Vrednovanje metoda,
FIFO,FIFO,
Moving Average,Moving Average,
Warranty Period (in days),Jamstveni period (u danima),
Auto re-order,Autorefiniš reda,
Reorder level based on Warehouse,Nivo Ponovno red zasnovan na Skladište,
Will also apply for variants unless overrridden,Primjenjivat će se i za varijante osim overrridden,
Units of Measure,Jedinice mjere,
Will also apply for variants,Primjenjivat će se i za varijante,
Serial Nos and Batches,Serijski brojevi i Paketi,
Has Batch No,Je Hrpa Ne,
Automatically Create New Batch,Automatski Create New Batch,
Batch Number Series,Serija brojeva serija,
"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.","Primer: ABCD. #####. Ako je serija postavljena i Batch No se ne pominje u transakcijama, na osnovu ove serije će se kreirati automatski broj serije. Ako uvek želite da eksplicitno navedete Batch No za ovu stavku, ostavite ovo praznim. Napomena: ovo podešavanje će imati prioritet nad Prefiksom naziva serije u postavkama zaliha.",
Has Expiry Date,Ima datum isteka,
Retain Sample,Zadrži uzorak,
Max Sample Quantity,Maksimalna količina uzorka,
Maximum sample quantity that can be retained,Maksimalna količina uzorka koja se može zadržati,
Has Serial No,Ima serijski br,
Serial Number Series,Serijski broj serije,
"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.","Primjer:. ABCD ##### \n Ako serije je postavljen i serijski broj se ne spominje u transakcijama, a zatim automatski serijski broj će biti kreiran na osnovu ove serije. Ako želite uvijek izričito spomenuti Serial Nos za ovu stavku. ovo ostavite prazno.",
Variants,Varijante,
Has Variants,Ima Varijante,
"If this item has variants, then it cannot be selected in sales orders etc.","Ako ova stavka ima varijante, onda ne može biti izabran u prodaji naloge itd",
Variant Based On,Varijanta na osnovu,
Item Attribute,Stavka Atributi,
"Sales, Purchase, Accounting Defaults","Prodaja, kupovina, podrazumevane vrednosti računovodstva",
Item Defaults,Item Defaults,
"Purchase, Replenishment Details","Detalji kupovine, dopunjavanja",
Is Purchase Item,Je dobavljivi proizvod,
Default Purchase Unit of Measure,Podrazumevana jedinica kupovine mjere,
Minimum Order Qty,Minimalna količina za naručiti,
Minimum quantity should be as per Stock UOM,Minimalna količina treba biti prema zalihama UOM-a,
Average time taken by the supplier to deliver,Prosječno vrijeme koje je dobavljač isporuči,
Is Customer Provided Item,Da li je predmet koji pruža klijent,
Delivered by Supplier (Drop Ship),Isporučuje Dobavljač (Drop Ship),
Supplier Items,Dobavljač Predmeti,
Foreign Trade Details,Vanjske trgovine Detalji,
Country of Origin,Zemlja porijekla,
Sales Details,Prodajni detalji,
Default Sales Unit of Measure,Podrazumevana jedinica prodaje mjere,
Is Sales Item,Je artikl namijenjen prodaji,
Max Discount (%),Max rabat (%),
No of Months,Broj meseci,
Customer Items,Customer Predmeti,
Inspection Criteria,Inspekcijski Kriteriji,
Inspection Required before Purchase,Inspekcija Obavezno prije kupnje,
Inspection Required before Delivery,Inspekcija Potrebna prije isporuke,
Default BOM,Zadani BOM,
Supply Raw Materials for Purchase,Supply sirovine za kupovinu,
If subcontracted to a vendor,Ako podizvođača na dobavljača,
Customer Code,Kupac Šifra,
Default Item Manufacturer,Zadani proizvođač predmeta,
Default Manufacturer Part No,Zadani broj dijela proizvođača,
Show in Website (Variant),Pokaži u Web (Variant),
Items with higher weightage will be shown higher,Predmeti sa višim weightage će biti prikazan veći,
Show a slideshow at the top of the page,Prikaži slideshow na vrhu stranice,
Website Image,Slika web stranice,
Website Warehouse,Web stranica galerije,
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.",Show &quot;na lageru&quot; ili &quot;Nije u skladištu&quot; temelji se na skladištu dostupna u tom skladištu.,
Website Item Groups,Website Stavka Grupe,
List this Item in multiple groups on the website.,Popis ovaj predmet u više grupa na web stranici.,
Copy From Item Group,Primjerak iz točke Group,
Website Content,Sadržaj web stranice,
You can use any valid Bootstrap 4 markup in this field. It will be shown on your Item Page.,U ovom polju možete koristiti bilo koji važeći oznaku Bootstrap 4. To će biti prikazano na vašoj stranici predmeta.,
Total Projected Qty,Ukupni planirani Količina,
Hub Publishing Details,Detalji izdavanja stanice,
Publish in Hub,Objavite u Hub,
Publish Item to hub.erpnext.com,Objavite stavku da hub.erpnext.com,
Hub Category to Publish,Glavna kategorija za objavljivanje,
Hub Warehouse,Hub skladište,
"Publish ""In Stock"" or ""Not in Stock"" on Hub based on stock available in this warehouse.",Objavite &quot;Na lageru&quot; ili &quot;Nema na lageru&quot; na Hub-u na osnovu raspoloživih zaliha u ovom skladištu.,
Synced With Hub,Pohranjen Hub,
Item Alternative,Artikal Alternative,
Alternative Item Code,Alternativni kod artikla,
Two-way,Dvosmerno,
Alternative Item Name,Alternativni naziv predmeta,
Attribute Name,Atributi Ime,
Numeric Values,Brojčane vrijednosti,
From Range,Od Range,
Increment,Prirast,
To Range,U rasponu,
Item Attribute Values,Stavka Atributi vrijednosti,
Item Attribute Value,Stavka vrijednost atributa,
Attribute Value,Vrijednost atributa,
Abbreviation,Skraćenica,
"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""","Ovo će biti dodan na Šifra za varijantu. Na primjer, ako je vaš skraćenica ""SM"", a stavka kod je ""T-SHIRT"", stavka kod varijante će biti ""T-SHIRT-SM""",
Item Barcode,Barkod artikla,
Barcode Type,Tip barkoda,
EAN,EAN,
UPC-A,UPC-A,
Item Customer Detail,Artikal - detalji kupca,
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Za praktičnost kupaca, te kodovi mogu se koristiti u tiskanim formata kao što su fakture i otpremnice",
Ref Code,Ref. Šifra,
Item Default,Stavka Default,
Purchase Defaults,Kupovina Defaults,
Default Buying Cost Center,Zadani trošak kupnje,
Default Supplier,Glavni dobavljač,
Default Expense Account,Zadani račun rashoda,
Sales Defaults,Sales Defaults,
Default Selling Cost Center,Zadani trošak prodaje,
Item Manufacturer,artikal Proizvođač,
Item Price,Cijena artikla,
Packing Unit,Jedinica za pakovanje,
Quantity  that must be bought or sold per UOM,Količina koja se mora kupiti ili prodati po UOM,
Item Quality Inspection Parameter,Parametar provjere kvalitete artikala,
Acceptance Criteria,Kriterij prihvaćanja,
Item Reorder,Ponovna narudžba artikla,
Check in (group),Check in (grupa),
Request for,Zahtjev za,
Re-order Level,Re-order Level,
Re-order Qty,Re-order Količina,
Item Supplier,Dobavljač artikla,
Item Variant,Stavka Variant,
Item Variant Attribute,Stavka Variant Atributi,
Do not update variants on save,Ne ažurirajte varijante prilikom štednje,
Fields will be copied over only at time of creation.,Polja će se kopirati samo u trenutku kreiranja.,
Allow Rename Attribute Value,Dozvoli preimenovati vrednost atributa,
Rename Attribute Value in Item Attribute.,Preimenuj vrijednost atributa u atributu predmeta.,
Copy Fields to Variant,Kopiraj polja na varijantu,
Item Website Specification,Specifikacija web stranice artikla,
Table for Item that will be shown in Web Site,Sto za stavku koja će se prikazati u Web Site,
Landed Cost Item,Sletio Troškovi artikla,
Receipt Document Type,Prijem Document Type,
Receipt Document,dokument o prijemu,
Applicable Charges,Mjerodavno Optužbe,
Purchase Receipt Item,Kupnja Potvrda predmet,
Landed Cost Purchase Receipt,Sletio Trošak Kupnja Potvrda,
Landed Cost Taxes and Charges,Sleteo Troškovi poreza i naknada,
Landed Cost Voucher,Sleteo Cost vaučera,
MAT-LCV-.YYYY.-,MAT-LCV-YYYY.-,
Purchase Receipts,Kupovina Primici,
Purchase Receipt Items,Primka proizvoda,
Get Items From Purchase Receipts,Get Predmeti iz otkupa Primici,
Distribute Charges Based On,Podijelite Optužbe na osnovu,
Landed Cost Help,Sleteo Cost Pomoć,
Manufacturers used in Items,Proizvođači se koriste u Predmeti,
Limited to 12 characters,Ograničena na 12 znakova,
MAT-MR-.YYYY.-,MAT-MR-.YYYY.-,
Partially Ordered,Djelomično naređeno,
Transferred,prebačen,
% Ordered,% Poruceno,
Terms and Conditions Content,Uvjeti sadržaj,
Quantity and Warehouse,Količina i skladišta,
Lead Time Date,Datum i vrijeme Lead-a,
Min Order Qty,Min Red Kol,
Packed Item,Dostava Napomena Pakiranje artikla,
To Warehouse (Optional),Da Warehouse (Opcionalno),
Actual Batch Quantity,Stvarna količina serije,
Prevdoc DocType,Prevdoc DOCTYPE,
Parent Detail docname,Roditelj Detalj docname,
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Generirajte pakovanje Slips za pakete dostaviti. Koristi se za obavijesti paket broja, sadržaj paket i njegove težine.",
Indicates that the package is a part of this delivery (Only Draft),Ukazuje da je paket je dio ove isporuke (samo nacrti),
MAT-PAC-.YYYY.-,MAT-PAC-YYYY.-,
From Package No.,Iz paketa broj,
Identification of the package for the delivery (for print),Identifikacija paketa za dostavu (za tisak),
To Package No.,Za Paket br,
If more than one package of the same type (for print),Ako je više od jedan paket od iste vrste (za tisak),
Package Weight Details,Težina paketa - detalji,
The net weight of this package. (calculated automatically as sum of net weight of items),Neto težina tog paketa. (Automatski izračunava kao zbroj neto težini predmeta),
Net Weight UOM,Težina mjerna jedinica,
Gross Weight,Bruto težina,
The gross weight of the package. Usually net weight + packaging material weight. (for print),Bruto težina paketa. Obično neto težina + ambalaža težina. (Za tisak),
Gross Weight UOM,Bruto težina UOM,
Packing Slip Item,Odreskom predmet,
DN Detail,DN detalj,
STO-PICK-.YYYY.-,STO-PICK-.YYYY.-,
Material Transfer for Manufacture,Prijenos materijala za izradu,
Qty of raw materials will be decided based on the qty of the Finished Goods Item,Količina sirovina odlučivat će se na osnovu količine proizvoda Gotove robe,
Parent Warehouse,Parent Skladište,
Items under this warehouse will be suggested,Predlozi ispod ovog skladišta bit će predloženi,
Get Item Locations,Dohvati lokacije predmeta,
Item Locations,Lokacije predmeta,
Pick List Item,Izaberite stavku popisa,
Picked Qty,Izabrani broj,
Price List Master,Cjenik Master,
Price List Name,Cjenik Ime,
Price Not UOM Dependent,Cijena nije UOM zavisna,
Applicable for Countries,Za zemlje u,
Price List Country,Cijena Lista država,
MAT-PRE-.YYYY.-,MAT-PRE-YYYY.-,
Supplier Delivery Note,Napomena o isporuci dobavljača,
Time at which materials were received,Vrijeme u kojem su materijali primili,
Return Against Purchase Receipt,Vratiti protiv Kupovina prijem,
Rate at which supplier's currency is converted to company's base currency,Stopa po kojoj supplier valuta se pretvaraju u tvrtke bazne valute,
Sets 'Accepted Warehouse' in each row of the items table.,Postavlja &#39;Prihvaćeno skladište&#39; u svaki red tablice stavki.,
Sets 'Rejected Warehouse' in each row of the items table.,Postavlja &#39;Odbijeno skladište&#39; u svaki red tablice stavki.,
Raw Materials Consumed,Potrošena sirovina,
Get Current Stock,Kreiraj trenutne zalihe,
Consumed Items,Potrošeni predmeti,
Add / Edit Taxes and Charges,Dodaj / uredi poreze i troškove,
Auto Repeat Detail,Auto Repeat Detail,
Transporter Details,Transporter Detalji,
Vehicle Number,Broj vozila,
Vehicle Date,Vozilo Datum,
Received and Accepted,Primljeni i prihvaćeni,
Accepted Quantity,Prihvaćena količina,
Rejected Quantity,Odbijen Količina,
Accepted Qty as per Stock UOM,Prihvaćena količina prema zalihama UOM,
Sample Quantity,Količina uzorka,
Rate and Amount,Kamatna stopa i iznos,
MAT-QA-.YYYY.-,MAT-QA-YYYY.-,
Report Date,Prijavi Datum,
Inspection Type,Inspekcija Tip,
Item Serial No,Serijski broj artikla,
Sample Size,Veličina uzorka,
Inspected By,Provjereno od strane,
Readings,Očitavanja,
Quality Inspection Reading,Kvaliteta Inspekcija čitanje,
Reading 1,Čitanje 1,
Reading 2,Čitanje 2,
Reading 3,Čitanje 3,
Reading 4,Čitanje 4,
Reading 5,Čitanje 5,
Reading 6,Čitanje 6,
Reading 7,Čitanje 7,
Reading 8,Čitanje 8,
Reading 9,Čitanje 9,
Reading 10,Čitanje 10,
Quality Inspection Template Name,Kvalitetno ime za proveru kvaliteta,
Quick Stock Balance,Brzi bilans stanja,
Available Quantity,Dostupna količina,
Distinct unit of an Item,Različite jedinice strane jedinice,
Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Skladište se može mijenjati samo preko Stock Stupanje / Dostavnica / kupiti primitka,
Purchase / Manufacture Details,Kupnja / Proizvodnja Detalji,
Creation Document Type,Tip stvaranje dokumenata,
Creation Document No,Stvaranje dokumenata nema,
Creation Date,Datum stvaranja,
Creation Time,vrijeme kreiranja,
Asset Details,Detalji o aktivi,
Asset Status,Status imovine,
Delivery Document Type,Dokument isporuke - tip,
Delivery Document No,Dokument isporuke br,
Delivery Time,Vrijeme isporuke,
Invoice Details,Račun Detalji,
Warranty / AMC Details,Jamstveni / AMC Brodu,
Warranty Expiry Date,Datum isteka jamstva,
AMC Expiry Date,AMC Datum isteka,
Under Warranty,Pod jamstvo,
Out of Warranty,Od jamstvo,
Under AMC,Pod AMC,
Out of AMC,Od AMC,
Warranty Period (Days),Jamstveni period (dani),
Serial No Details,Serijski nema podataka,
MAT-STE-.YYYY.-,MAT-STE-YYYY.-,
Stock Entry Type,Vrsta unosa zaliha,
Stock Entry (Outward GIT),Unos dionica (vanjski GIT),
Material Consumption for Manufacture,Potrošnja materijala za proizvodnju,
Repack,Prepakovati,
Send to Subcontractor,Pošaljite podizvođaču,
Delivery Note No,Otpremnica br,
Sales Invoice No,Faktura prodaje br,
Purchase Receipt No,Primka br.,
Inspection Required,Inspekcija Obvezno,
From BOM,Iz BOM,
For Quantity,Za količina,
As per Stock UOM,Kao po burzi UOM,
Including items for sub assemblies,Uključujući i stavke za pod sklopova,
Default Source Warehouse,Zadano izvorno skladište,
Source Warehouse Address,Adresa skladišta izvora,
Default Target Warehouse,Centralno skladište,
Target Warehouse Address,Adresa ciljne magacine,
Update Rate and Availability,Ažuriranje Rate i raspoloživost,
Total Incoming Value,Ukupna vrijednost Incoming,
Total Outgoing Value,Ukupna vrijednost Odlazni,
Total Value Difference (Out - In),Ukupna vrijednost Razlika (Out - In),
Additional Costs,Dodatni troškovi,
Total Additional Costs,Ukupno dodatnih troškova,
Customer or Supplier Details,Detalji o Kupcu ili Dobavljacu,
Per Transferred,Per Transferred,
Stock Entry Detail,Kataloški Stupanje Detalj,
Basic Rate (as per Stock UOM),Basic Rate (kao po akciji UOM),
Basic Amount,Osnovni iznos,
Additional Cost,Dodatni trošak,
Serial No / Batch,Serijski Ne / Batch,
BOM No. for a Finished Good Item,BOM broj za Gotovi Dobar točki,
Material Request used to make this Stock Entry,Materijal Zahtjev se koristi da bi se ova Stock unos,
Subcontracted Item,Predmet podizvođača,
Against Stock Entry,Protiv ulaska u dionice,
Stock Entry Child,Dijete ulaska na zalihe,
PO Supplied Item,PO isporučeni artikal,
Reference Purchase Receipt,Referentna kupovina,
Stock Ledger Entry,Stock Ledger Stupanje,
Outgoing Rate,Odlazni Rate,
Actual Qty After Transaction,Stvarna količina nakon transakcije,
Stock Value Difference,Stock Vrijednost razlika,
Stock Queue (FIFO),Kataloški red (FIFO),
Is Cancelled,Je otkazan,
Stock Reconciliation,Kataloški pomirenje,
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.,Ovaj alat pomaže vam da ažurirate ili popraviti količinu i vrednovanje zaliha u sistemu. To se obično koristi za usklađivanje vrijednosti sistema i ono što zaista postoji u skladištima.,
MAT-RECO-.YYYY.-,MAT-RECO-YYYY.-,
Reconciliation JSON,Pomirenje JSON,
Stock Reconciliation Item,Stock Pomirenje Item,
Before reconciliation,Prije nego pomirenje,
Current Serial No,Trenutni serijski br,
Current Valuation Rate,Trenutno Vrednovanje Rate,
Current Amount,Trenutni iznos,
Quantity Difference,Količina Razlika,
Amount Difference,iznos Razlika,
Item Naming By,Artikal imenovan po,
Default Item Group,Zadana grupa proizvoda,
Default Stock UOM,Zadana kataloška mjerna jedinica,
Sample Retention Warehouse,Skladište za zadržavanje uzorka,
Default Valuation Method,Zadana metoda vrednovanja,
Show Barcode Field,Pokaži Barcode Field,
Convert Item Description to Clean HTML,Pretvoriti stavku Opis za čišćenje HTML-a,
Allow Negative Stock,Dopustite negativnu zalihu,
Automatically Set Serial Nos based on FIFO,Automatski se postavlja rednim brojevima na osnovu FIFO,
Auto Material Request,Auto Materijal Zahtjev,
Inter Warehouse Transfer Settings,Postavke prijenosa Inter Warehouse,
Freeze Stock Entries,Zamrzavanje Stock Unosi,
Stock Frozen Upto,Kataloški Frozen Upto,
Batch Identification,Identifikacija serije,
Use Naming Series,Koristite nazive serije,
Naming Series Prefix,Prefiks naziva serije,
UOM Category,Kategorija UOM,
UOM Conversion Detail,UOM pretvorbe Detalj,
Variant Field,Varijantsko polje,
A logical Warehouse against which stock entries are made.,A logično Skladište protiv kojih su napravljeni unosa zaliha.,
Warehouse Detail,Detalji o skladištu,
Warehouse Name,Naziv skladišta,
Warehouse Contact Info,Kontakt informacije skladišta,
PIN,PIN,
ISS-.YYYY.-,ISS-.GGGG.-,
Raised By (Email),Pokrenuo (E-mail),
Issue Type,Vrsta izdanja,
Issue Split From,Izdanje Split From,
Service Level,Nivo usluge,
Response By,Odgovor By,
Response By Variance,Odgovor prema varijanci,
Ongoing,U toku,
Resolution By,Rezolucija,
Resolution By Variance,Rezolucija po varijanti,
Service Level Agreement Creation,Izrada sporazuma o nivou usluge,
First Responded On,Prvi put odgovorio dana,
Resolution Details,Detalji o rjesenju problema,
Opening Date,Otvaranje Datum,
Opening Time,Radno vrijeme,
Resolution Date,Rezolucija Datum,
Via Customer Portal,Preko portala za kupce,
Support Team,Tim za podršku,
Issue Priority,Prioritet pitanja,
Service Day,Dan usluge,
Workday,Radni dan,
Default Priority,Default Priority,
Priorities,Prioriteti,
Support Hours,sati podrške,
Support and Resolution,Podrška i rezolucija,
Default Service Level Agreement,Standardni ugovor o nivou usluge,
Entity,Entitet,
Agreement Details,Detalji sporazuma,
Response and Resolution Time,Vreme odziva i rešavanja,
Service Level Priority,Prioritet na nivou usluge,
Resolution Time,Vreme rezolucije,
Support Search Source,Podrška za pretragu,
Source Type,Tip izvora,
Query Route String,String string upita,
Search Term Param Name,Termin za pretragu Param Ime,
Response Options,Opcije odgovora,
Response Result Key Path,Response Result Key Path,
Post Route String,Post String niz,
Post Route Key List,Lista spiska ključeva,
Post Title Key,Ključ posta za naslov,
Post Description Key,Post Opis Ključ,
Link Options,Link Options,
Source DocType,Source DocType,
Result Title Field,Polje rezultata rezultata,
Result Preview Field,Polje za pregled rezultata,
Result Route Field,Polje trase rezultata,
Service Level Agreements,Ugovori o nivou usluge,
Track Service Level Agreement,Sporazum o nivou usluge za praćenje,
Allow Resetting Service Level Agreement,Dozvoli resetiranje sporazuma o nivou usluge,
Close Issue After Days,Zatvori Issue Nakon nekoliko dana,
Auto close Issue after 7 days,Auto blizu izdanje nakon 7 dana,
Support Portal,Portal za podršku,
Get Started Sections,Započnite sekcije,
Show Latest Forum Posts,Prikaži najnovije poruke foruma,
Forum Posts,Forum Posts,
Forum URL,Forum URL,
Get Latest Query,Najnoviji upit,
Response Key List,Lista ključnih reagovanja,
Post Route Key,Post Route Key,
Search APIs,API pretraživanja,
SER-WRN-.YYYY.-,SER-WRN-.YYYY.-,
Issue Date,Datum izdavanja,
Item and Warranty Details,Stavka i garancija Detalji,
Warranty / AMC Status,Jamstveni / AMC Status,
Resolved By,Riješen Do,
Service Address,Usluga Adresa,
If different than customer address,Ako se razlikuje od kupaca adresu,
Raised By,Povišena Do,
From Company,Iz Društva,
Rename Tool,Preimenovanje alat,
Utilities,Komunalne usluge,
Type of document to rename.,Vrsta dokumenta za promjenu naziva.,
File to Rename,File da biste preimenovali,
"Attach .csv file with two columns, one for the old name and one for the new name","Priložiti .csv datoteku s dvije kolone, jedan za stari naziv i jedna za novo ime",
Rename Log,Preimenovanje Prijavite,
SMS Log,SMS log,
Sender Name,Ime / Naziv pošiljaoca,
Sent On,Poslano na adresu,
No of Requested SMS,Nema traženih SMS,
Requested Numbers,Traženi brojevi,
No of Sent SMS,Ne poslanih SMS,
Sent To,Poslati,
Absent Student Report,Odsutan Student Report,
Assessment Plan Status,Status plana procjene,
Asset Depreciation Ledger,Asset Amortizacija Ledger,
Asset Depreciations and Balances,Imovine Amortizacija i vage,
Available Stock for Packing Items,Raspoloživo stanje za pakirane proizvode,
Bank Clearance Summary,Razmak banka Sažetak,
Batch Item Expiry Status,Batch Stavka Status isteka,
Batch-Wise Balance History,Batch-Wise bilanca Povijest,
BOM Explorer,BOM Explorer,
BOM Search,BOM pretraga,
BOM Stock Calculated,Obračun BOM-a,
BOM Variance Report,Izveštaj BOM varijacije,
Campaign Efficiency,kampanja efikasnost,
Cash Flow,Priliv novca,
Completed Work Orders,Završene radne naloge,
To Produce,proizvoditi,
Produced,Proizvedeno,
Consolidated Financial Statement,Konsolidovana finansijska izjava,
Course wise Assessment Report,Naravno mudar Izvještaj o procjeni,
Customer Acquisition and Loyalty,Stjecanje kupaca i lojalnost,
Customer Credit Balance,Customer Credit Balance,
Customer Ledger Summary,Sažetak knjige klijenta,
Customer-wise Item Price,Kupcima prilagođena cijena,
Customers Without Any Sales Transactions,Kupci bez prodajnih transakcija,
Daily Timesheet Summary,Dnevni Timesheet Pregled,
DATEV,DATEV,
Delayed Item Report,Izvještaj o odloženom predmetu,
Delayed Order Report,Izveštaj o odloženom nalogu,
Delivered Items To Be Billed,Isporučeni proizvodi za naplatiti,
Delivery Note Trends,Trendovi otpremnica,
Electronic Invoice Register,Registar elektroničkih računa,
Employee Billing Summary,Sažetak naplate zaposlenika,
Employee Birthday,Rođendani zaposlenih,
Employee Information,Informacija o zaposlenom,
Employee Leave Balance,Zaposlenik napuste balans,
Employee Leave Balance Summary,Sažetak ravnoteže zaposlenika,
Eway Bill,Eway Bill,
Expiring Memberships,Istekao članstva,
Fichier des Ecritures Comptables [FEC],Fichier des Ecritures Comptables [FEC],
Final Assessment Grades,Završne ocene,
Fixed Asset Register,Registar fiksne imovine,
Gross and Net Profit Report,Izvještaj o bruto i neto dobiti,
GST Itemised Purchase Register,PDV Specificirane Kupovina Registracija,
GST Itemised Sales Register,PDV Specificirane prodaje Registracija,
GST Purchase Register,PDV Kupovina Registracija,
GST Sales Register,PDV prodaje Registracija,
GSTR-1,GSTR-1,
GSTR-2,GSTR-2,
Hotel Room Occupancy,Hotelska soba u posjedu,
HSN-wise-summary of outward supplies,HSN-mudar-rezime izvora isporuke,
Inactive Customers,neaktivnih kupaca,
Inactive Sales Items,Neaktivni artikli prodaje,
IRS 1099,IRS 1099,
Issued Items Against Work Order,Izdate stavke protiv radnog naloga,
Projected Quantity as Source,Projektovanih količina kao izvor,
Item Balance (Simple),Balans predmeta (Jednostavno),
Item Price Stock,Stavka cijena Stock,
Item Prices,Cijene artikala,
Item Shortage Report,Nedostatak izvješća za artikal,
Item Variant Details,Detalji varijante proizvoda,
Item-wise Price List Rate,Stavka - mudar Cjenovnik Ocijenite,
Item-wise Purchase History,Stavka-mudar Kupnja Povijest,
Item-wise Purchase Register,Stavka-mudar Kupnja Registracija,
Item-wise Sales History,Stavka-mudar Prodaja Povijest,
Item-wise Sales Register,Stavka-mudri prodaja registar,
Items To Be Requested,Potraživani artikli,
Reserved,Rezervirano,
Itemwise Recommended Reorder Level,Itemwise Preporučio redoslijeda Level,
Lead Details,Detalji potenciajalnog kupca,
Lead Owner Efficiency,Lead Vlasnik efikasnost,
Lost Opportunity,Izgubljena prilika,
Maintenance Schedules,Rasporedi održavanja,
Material Requests for which Supplier Quotations are not created,Materijalni Zahtjevi za koje Supplier Citati nisu stvorene,
Open Work Orders,Otvorite radne naloge,
Qty to Deliver,Količina za dovođenje,
Patient Appointment Analytics,Analitika imenovanja pacijenta,
Payment Period Based On Invoice Date,Razdoblje za naplatu po Datum fakture,
Pending SO Items For Purchase Request,Otvorena SO Proizvodi za zahtjev za kupnju,
Procurement Tracker,Praćenje nabavke,
Product Bundle Balance,Bilans proizvoda,
Production Analytics,proizvodnja Analytics,
Profit and Loss Statement,Račun dobiti i gubitka,
Profitability Analysis,Analiza profitabilnosti,
Project Billing Summary,Sažetak naplate projekta,
Project wise Stock Tracking,Projektno mudro praćenje zaliha,
Project wise Stock Tracking ,Supervizor pracenje zaliha,
Prospects Engaged But Not Converted,Izgledi Engaged Ali ne pretvaraju,
Purchase Analytics,Kupnja Analytics,
Purchase Invoice Trends,Trendovi kupnje proizvoda,
Qty to Receive,Količina za primanje,
Received Qty Amount,Količina primljene količine,
Billed Qty,Količina računa,
Purchase Order Trends,Trendovi narudžbenica kupnje,
Purchase Receipt Trends,Račun kupnje trendovi,
Purchase Register,Kupnja Registracija,
Quotation Trends,Trendovi ponude,
Received Items To Be Billed,Primljeni Proizvodi se naplaćuje,
Qty to Order,Količina za narudžbu,
Requested Items To Be Transferred,Traženi stavki za prijenos,
Qty to Transfer,Količina za prijenos,
Sales Analytics,Prodajna analitika,
Sales Invoice Trends,Trendovi prodajnih računa,
Sales Order Trends,Prodajnog naloga trendovi,
Sales Partner Commission Summary,Rezime Komisije za prodajne partnere,
Sales Partner Target Variance based on Item Group,Ciljna varijanta prodajnog partnera na temelju grupe proizvoda,
Sales Partner Transaction Summary,Sažetak transakcije prodajnog partnera,
Sales Partners Commission,Prodaja Partneri komisija,
Invoiced Amount (Exclusive Tax),Iznos na fakturi (ekskluzivni porez),
Average Commission Rate,Prosječna stopa komisija,
Sales Payment Summary,Sažetak prodaje plata,
Sales Person Commission Summary,Povjerenik Komisije za prodaju,
Sales Person Target Variance Based On Item Group,Ciljna varijacija prodajnog lica na osnovu grupe predmeta,
Sales Person-wise Transaction Summary,Prodaja Osobne mudar Transakcija Sažetak,
Sales Register,Prodaja Registracija,
Serial No Service Contract Expiry,Serijski Bez isteka Ugovor o pružanju usluga,
Serial No Status,Serijski Bez Status,
Serial No Warranty Expiry,Serijski Nema jamstva isteka,
Stock Ageing,Kataloški Starenje,
Stock and Account Value Comparison,Poređenje vrednosti akcija i računa,
Stock Projected Qty,Projektovana kolicina na zalihama,
Student and Guardian Contact Details,Student i Guardian Kontakt detalji,
Student Batch-Wise Attendance,Student Batch-Wise Posjećenost,
Student Fee Collection,Student Naknada Collection,
Student Monthly Attendance Sheet,Student Mjesečni Posjeta list,
Subcontracted Item To Be Received,Podugovarački predmet koji treba primiti,
Subcontracted Raw Materials To Be Transferred,Podugovarane sirovine koje treba prenijeti,
Supplier Ledger Summary,Sažetak knjige dobavljača,
Supplier-Wise Sales Analytics,Supplier -mudar prodaje Analytics,
Support Hour Distribution,Podrška Distribucija sata,
TDS Computation Summary,Pregled TDS računa,
TDS Payable Monthly,TDS se plaća mesečno,
Territory Target Variance Based On Item Group,Varijacija ciljne teritorije na osnovu grupe predmeta,
Territory-wise Sales,Prodaja na teritoriji,
Total Stock Summary,Ukupno Stock Pregled,
Trial Balance,Pretresno bilanca,
Trial Balance (Simple),Probni balans (jednostavan),
Trial Balance for Party,Suđenje Balance za stranke,
Warehouse wise Item Balance Age and Value,Skladno mudro Stavka Balansno doba i vrijednost,
Work Order Stock Report,Izveštaj o radnom nalogu,
Work Orders in Progress,Radni nalogi u toku,
Validation Error,Pogreška provjere,
Automatically Process Deferred Accounting Entry,Automatski obradi odgođeni knjigovodstveni unos,
Bank Clearance,Potvrda banke,
Bank Clearance Detail,Detalji o odobrenju banke,
Update Cost Center Name / Number,Ažuriranje naziva / broja mjesta troška,
Journal Entry Template,Predložak unosa u časopis,
Template Title,Naslov predloška,
Journal Entry Type,Vrsta unosa u časopis,
Journal Entry Template Account,Račun predloška unosa u dnevnik,
Process Deferred Accounting,Obraditi odgođeno računovodstvo,
Manual entry cannot be created! Disable automatic entry for deferred accounting in accounts settings and try again,Nije moguće kreirati ručni unos! Onemogućite automatski unos za odgođeno računovodstvo u postavkama računa i pokušajte ponovo,
End date cannot be before start date,Datum završetka ne može biti prije datuma početka,
Total Counts Targeted,Ukupno ciljano brojanje,
Total Counts Completed,Ukupno prebrojavanje završeno,
Counts Targeted: {0},Broj ciljanih brojeva: {0},
Material Request Warehouse,Skladište zahtjeva za materijalom,
Select warehouse for material requests,Odaberite skladište za zahtjeve za materijalom,
Transfer Materials For Warehouse {0},Transfer materijala za skladište {0},
Production Plan Material Request Warehouse,Skladište zahtjeva za planom proizvodnje,
Sets 'Source Warehouse' in each row of the items table.,Postavlja &#39;Izvorno skladište&#39; u svaki red tablice stavki.,
Sets 'Target Warehouse' in each row of the items table.,Postavlja &#39;Target Warehouse&#39; u svaki red tablice stavki.,
Show Cancelled Entries,Prikaži otkazane unose,
Backdated Stock Entry,Unos dionica sa zadnjim datumom,
Row #{}: Currency of {} - {} doesn't matches company currency.,Redak {{}: Valuta od {} - {} se ne podudara s valutom kompanije.,
{} Assets created for {},{} Sredstva kreirana za {},
{0} Number {1} is already used in {2} {3},{0} Broj {1} već se koristi u dokumentu {2} {3},
Update Bank Clearance Dates,Ažurirajte datume odobrenja za banke,
Healthcare Practitioner: ,Zdravstveni radnik:,
Lab Test Conducted: ,Izvršen laboratorijski test:,
Lab Test Event: ,Laboratorijski test:,
Lab Test Result: ,Rezultat laboratorijskog testa:,
Clinical Procedure conducted: ,Provedeni klinički postupak:,
Therapy Session Charges: {0},Troškovi sesije terapije: {0},
Therapy: ,Terapija:,
Therapy Plan: ,Plan terapije:,
Total Counts Targeted: ,Ukupno ciljano brojanje:,
Total Counts Completed: ,Ukupno završeno brojanje:,
Andaman and Nicobar Islands,Andamanska i Nikobarska ostrva,
Andhra Pradesh,Andhra Pradesh,
Arunachal Pradesh,Arunachal Pradesh,
Assam,Assam,
Bihar,Bihar,
Chandigarh,Chandigarh,
Chhattisgarh,Chhattisgarh,
Dadra and Nagar Haveli,Dadra i Nagar Haveli,
Daman and Diu,Daman i Diu,
Delhi,Delhi,
Goa,Goa,
Gujarat,Gujarat,
Haryana,Haryana,
Himachal Pradesh,Himachal Pradesh,
Jammu and Kashmir,Džamu i Kašmir,
Jharkhand,Jharkhand,
Karnataka,Karnataka,
Kerala,Kerala,
Lakshadweep Islands,Ostrva Lakshadweep,
Madhya Pradesh,Madhya Pradesh,
Maharashtra,Maharashtra,
Manipur,Manipur,
Meghalaya,Meghalaya,
Mizoram,Mizoram,
Nagaland,Nagaland,
Odisha,Odisha,
Other Territory,Ostala teritorija,
Pondicherry,Pondicherry,
Punjab,Punjab,
Rajasthan,Rajasthan,
Sikkim,Sikkim,
Tamil Nadu,Tamil Nadu,
Telangana,Telangana,
Tripura,Tripura,
Uttar Pradesh,Uttar Pradesh,
Uttarakhand,Uttarakhand,
West Bengal,Zapadni Bengal,
Is Mandatory,Je obavezna,
Published on,Objavljeno,
Service Received But Not Billed,"Usluga primljena, ali ne naplaćena",
Deferred Accounting Settings,Postavke odgođenog računovodstva,
Book Deferred Entries Based On,Rezervirajte odložene unose na osnovu,
Days,Dani,
Months,Mjeseci,
Book Deferred Entries Via Journal Entry,Rezervirajte unose putem dnevnika,
Submit Journal Entries,Pošaljite članke u časopisu,
If this is unchecked Journal Entries will be saved in a Draft state and will have to be submitted manually,"Ako ovo nije označeno, unosi u dnevnik bit će spremljeni u stanje nacrta i morat će se slati ručno",
Enable Distributed Cost Center,Omogući distribuirano mjesto troškova,
Distributed Cost Center,Distribuirano mjesto troškova,
Dunning,Dunning,
DUNN-.MM.-.YY.-,DUNN-.MM .-. YY.-,
Overdue Days,Zakašnjeli dani,
Dunning Type,Dunning Type,
Dunning Fee,Naknada za Dunning,
Dunning Amount,Iznos za izlazak,
Resolved,Riješeno,
Unresolved,Neriješeno,
Printing Setting,Podešavanje ispisa,
Body Text,Body Text,
Closing Text,Završni tekst,
Resolve,Riješi,
Dunning Letter Text,Dunning Letter Text,
Is Default Language,To je zadani jezik,
Letter or Email Body Text,Tekst pisma ili e-pošte,
Letter or Email Closing Text,Završni tekst pisma ili e-pošte,
Body and Closing Text Help,Pomoć za tekst i završni tekst,
Overdue Interval,Preostali interval,
Dunning Letter,Dunning Letter,
"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.","Ovaj odjeljak omogućava korisniku da postavi tekst tijela i završni tekst Pisma za upozoravanje za vrstu odbojke na osnovu jezika, koji se može koristiti u Ispisu.",
Reference Detail No,Referentni detalj br,
Custom Remarks,Prilagođene napomene,
Please select a Company first.,Prvo odaberite kompaniju.,
"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice, Journal Entry or Dunning","Redak {0}: vrsta referentnog dokumenta mora biti jedan od prodajnih naloga, faktura prodaje, unosa u dnevnik ili isteka",
POS Closing Entry,Zatvaranje ulaza u POS,
POS Opening Entry,POS otvaranje,
POS Transactions,POS transakcije,
POS Closing Entry Detail,Detalji o zatvaranju POS-a,
Opening Amount,Iznos otvaranja,
Closing Amount,Završni iznos,
POS Closing Entry Taxes,POS porez na zatvaranje,
POS Invoice,POS faktura,
ACC-PSINV-.YYYY.-,ACC-PSINV-.GGGG.-,
Consolidated Sales Invoice,Konsolidovana faktura prodaje,
Return Against POS Invoice,Povraćaj protiv POS fakture,
Consolidated,Konsolidovano,
POS Invoice Item,POS faktura,
POS Invoice Merge Log,Dnevnik spajanja POS faktura,
POS Invoices,POS fakture,
Consolidated Credit Note,Konsolidovana kreditna napomena,
POS Invoice Reference,Referenca POS računa,
Set Posting Date,Postavite datum knjiženja,
Opening Balance Details,Detalji o početnom stanju,
POS Opening Entry Detail,Detalji o otvaranju POS-a,
POS Payment Method,POS način plaćanja,
Payment Methods,metode plaćanja,
Process Statement Of Accounts,Obraditi izvod računa,
General Ledger Filters,Filteri glavne knjige,
Customers,Kupci,
Select Customers By,Odaberite Kupce prema,
Fetch Customers,Dohvatite kupce,
Send To Primary Contact,Pošalji primarnom kontaktu,
Print Preferences,Postavke ispisa,
Include Ageing Summary,Uključite sažetak starenja,
Enable Auto Email,Omogućite automatsku e-poštu,
Filter Duration (Months),Trajanje filtra (mjeseci),
CC To,CC To,
Help Text,Tekst pomoći,
Emails Queued,E-adrese u redu,
Process Statement Of Accounts Customer,Obradite izvod računa,
Billing Email,E-adresa za naplatu,
Primary Contact Email,Primarna kontakt adresa e-pošte,
PSOA Cost Center,PSOA centar troškova,
PSOA Project,PSOA projekat,
ACC-PINV-RET-.YYYY.-,ACC-PINV-RET-.GGGG.-,
Supplier GSTIN,Dobavljač GSTIN,
Place of Supply,Mjesto isporuke,
Select Billing Address,Odaberite Adresa za naplatu,
GST Details,GST detalji,
GST Category,GST kategorija,
Registered Regular,Registered Regular,
Registered Composition,Registrovana kompozicija,
Unregistered,Neregistrirano,
SEZ,SEZ,
Overseas,Prekomorski,
UIN Holders,UIN držači,
With Payment of Tax,Uz plaćanje poreza,
Without Payment of Tax,Bez plaćanja poreza,
Invoice Copy,Kopija fakture,
Original for Recipient,Original za primatelja,
Duplicate for Transporter,Duplikat za Transporter,
Duplicate for Supplier,Duplikat za dobavljača,
Triplicate for Supplier,Trostruki primjerak za dobavljača,
Reverse Charge,Obrnuto punjenje,
Y,Y.,
N,N,
E-commerce GSTIN,E-trgovina GSTIN,
Reason For Issuing document,Razlog za izdavanje dokumenta,
01-Sales Return,01-Povratak prodaje,
02-Post Sale Discount,Popust za prodaju nakon 02,
03-Deficiency in services,03-Nedostatak usluga,
04-Correction in Invoice,04-Ispravak na fakturi,
05-Change in POS,05-Promjena u POS-u,
06-Finalization of Provisional assessment,06-Finalizacija privremene procjene,
07-Others,07-Ostalo,
Eligibility For ITC,Ispunjavanje uslova za ITC,
Input Service Distributor,Distributer ulaznih usluga,
Import Of Service,Uvoz usluge,
Import Of Capital Goods,Uvoz kapitalnih dobara,
Ineligible,Neprihvatljivo,
All Other ITC,Svi ostali ITC,
Availed ITC Integrated Tax,Integrisani ITC integrisani porez,
Availed ITC Central Tax,Dostupni centralni porez ITC-a,
Availed ITC State/UT Tax,Availed ITC State / UT porez,
Availed ITC Cess,Availed ITC Cess,
Is Nil Rated or Exempted,Da li je Nil ocijenjen ili izuzet,
Is Non GST,Nije GST,
ACC-SINV-RET-.YYYY.-,ACC-SINV-RET-.GGGG.-,
E-Way Bill No.,E-Way Bill No.,
Is Consolidated,Konsolidovan je,
Billing Address GSTIN,Adresa za naplatu GSTIN,
Customer GSTIN,Kupac GSTIN,
GST Transporter ID,GST Transporter ID,
Distance (in km),Udaljenost (u km),
Road,Cesta,
Air,Zrak,
Rail,Rail,
Ship,Brod,
GST Vehicle Type,GST tip vozila,
Over Dimensional Cargo (ODC),Prekomerni teret (ODC),
Consumer,Potrošač,
Deemed Export,Predviđeni izvoz,
Port Code,Port port,
 Shipping Bill Number,Broj računa za dostavu,
Shipping Bill Date,Datum dostave računa,
Subscription End Date,Datum završetka pretplate,
Follow Calendar Months,Pratite mjesece kalendara,
If this is checked subsequent new invoices will be created on calendar  month and quarter start dates irrespective of current invoice start date,"Ako je ovo potvrđeno, kreirat će se nove fakture na datum početka kalendarskog mjeseca i kvartala, bez obzira na datum početka tekuće fakture",
Generate New Invoices Past Due Date,Generirajte nove fakture s rokom dospijeća,
New invoices will be generated as per schedule even if current invoices are unpaid or past due date,"Nove fakture generirat će se prema rasporedu, čak i ako su tekuće fakture neplaćene ili su istekle",
Document Type ,Tip dokumenta,
Subscription Price Based On,Cijena pretplate na osnovu,
Fixed Rate,Fiksna stopa,
Based On Price List,Na osnovu cjenika,
Monthly Rate,Mjesečna stopa,
Cancel Subscription After Grace Period,Otkažite pretplatu nakon počeka,
Source State,Izvorna država,
Is Inter State,Je Inter State,
Purchase Details,Detalji kupovine,
Depreciation Posting Date,Datum knjiženja amortizacije,
"By default, the Supplier Name is set as per the Supplier Name entered. If you want Suppliers to be named by a  ","Prema zadanim postavkama, ime dobavljača je postavljeno prema unesenom imenu dobavljača. Ako želite da dobavljače imenuje",
 choose the 'Naming Series' option.,odaberite opciju &#39;Naming Series&#39;.,
Configure the default Price List when creating a new Purchase transaction. Item prices will be fetched from this Price List.,Konfigurišite zadani cjenik prilikom kreiranja nove transakcije kupovine. Cijene stavki će se preuzeti iz ovog cjenika.,
"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.","Ako je ova opcija konfigurirana kao &quot;Da&quot;, ERPNext će vas spriječiti u stvaranju računa ili potvrde o kupovini bez prethodnog kreiranja narudžbenice. Ovu konfiguraciju možete nadjačati za određenog dobavljača tako što ćete omogućiti potvrdni okvir &#39;Dopusti stvaranje računa za kupovinu bez narudžbenice&#39; u glavnom meniju dobavljača.",
"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.","Ako je ova opcija konfigurirana kao &quot;Da&quot;, ERPNext će vas spriječiti u stvaranju fakture za kupovinu bez prethodnog kreiranja potvrde o kupovini. Ovu konfiguraciju možete nadjačati za određenog dobavljača tako što ćete omogućiti potvrdni okvir &#39;Omogući stvaranje računa za kupovinu bez potvrde o kupovini&#39; na glavnom mjestu dobavljača.",
Quantity & Stock,Količina i zalihe,
Call Details,Detalji poziva,
Authorised By,Ovlašteno od,
Signee (Company),Potpisnik (kompanija),
Signed By (Company),Potpisao (kompanija),
First Response Time,Vrijeme prvog odgovora,
Request For Quotation,Zahtjev za ponudu,
Opportunity Lost Reason Detail,Detalji izgubljenog razloga za priliku,
Access Token Secret,Pristup tajnoj žetonu,
Add to Topics,Dodaj u teme,
...Adding Article to Topics,... Dodavanje članka u teme,
Add Article to Topics,Dodajte članak u teme,
This article is already added to the existing topics,Ovaj je članak već dodan postojećim temama,
Add to Programs,Dodaj u programe,
Programs,Programi,
...Adding Course to Programs,... Dodavanje kursa programima,
Add Course to Programs,Dodajte kurs u programe,
This course is already added to the existing programs,Ovaj kurs je već dodan postojećim programima,
Learning Management System Settings,Postavke sistema za upravljanje učenjem,
Enable Learning Management System,Omogućite sistem upravljanja učenjem,
Learning Management System Title,Naslov sistema upravljanja učenjem,
...Adding Quiz to Topics,... Dodavanje kviza u teme,
Add Quiz to Topics,Dodajte kviz u teme,
This quiz is already added to the existing topics,Ovaj kviz je već dodan postojećim temama,
Enable Admission Application,Omogućite prijavu za prijem,
EDU-ATT-.YYYY.-,EDU-ATT-.GGGG.-,
Marking attendance,Označavanje prisustva,
Add Guardians to Email Group,Dodajte skrbnike u grupu e-pošte,
Attendance Based On,Prisustvo na osnovu,
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,Označite ovo da biste studenta označili kao prisutnog u slučaju da student ne pohađa institut da bi u bilo kojem slučaju učestvovao ili predstavljao institut.,
Add to Courses,Dodaj u kurseve,
...Adding Topic to Courses,... Dodavanje teme kursevima,
Add Topic to Courses,Dodajte temu kursevima,
This topic is already added to the existing courses,Ova je tema već dodana postojećim tečajevima,
"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","Ako Shopify nema kupca u narudžbi, tada će tijekom sinkronizacije narudžbi sistem uzeti u obzir zadanog kupca za narudžbu.",
The accounts are set by the system automatically but do confirm these defaults,"Račune sustav postavlja automatski, ali potvrđuje ove zadane postavke",
Default Round Off Account,Zadani zaokruženi račun,
Failed Import Log,Dnevnik uvoza nije uspio,
Fixed Error Log,Fiksni dnevnik grešaka,
Company {0} already exists. Continuing will overwrite the Company and Chart of Accounts,Kompanija {0} već postoji. Nastavak će prebrisati kompaniju i kontni plan,
Meta Data,Meta podaci,
Unresolve,Nerazriješi,
Create Document,Kreirajte dokument,
Mark as unresolved,Označi kao neriješeno,
TaxJar Settings,Postavke TaxJar-a,
Sandbox Mode,Peščanik režim,
Enable Tax Calculation,Omogućite obračun poreza,
Create TaxJar Transaction,Kreirajte TaxJar transakciju,
Credentials,Akreditivi,
Live API Key,API API ključ,
Sandbox API Key,API ključ Sandbox-a,
Configuration,Konfiguracija,
Tax Account Head,Voditelj poreznog računa,
Shipping Account Head,Šef računa za isporuku,
Practitioner Name,Ime liječnika,
Enter a name for the Clinical Procedure Template,Unesite naziv za obrazac kliničke procedure,
Set the Item Code which will be used for billing the Clinical Procedure.,Postavite kod predmeta koji će se koristiti za naplatu kliničkog postupka.,
Select an Item Group for the Clinical Procedure Item.,Odaberite grupu predmeta za stavku kliničkog postupka.,
Clinical Procedure Rate,Stopa kliničke procedure,
Check this if the Clinical Procedure is billable and also set the rate.,Provjerite ovo ako se klinički postupak naplati i također postavite stopu.,
Check this if the Clinical Procedure utilises consumables. Click ,Provjerite ovo ako klinički postupak koristi potrošni materijal. Kliknite,
 to know more,da znam više,
"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.","Za obrazac možete postaviti i Medicinsko odjeljenje. Nakon spremanja dokumenta, automatski će se stvoriti stavka za naplatu ovog kliničkog postupka. Tada možete koristiti ovaj obrazac dok kreirate kliničke postupke za pacijente. Predlošci vas štede od popunjavanja suvišnih podataka svaki put. Također možete stvoriti predloške za druge operacije poput laboratorijskih testova, terapijskih sesija itd.",
Descriptive Test Result,Opisni rezultat testa,
Allow Blank,Dopusti prazno,
Descriptive Test Template,Opisni testni obrazac,
"If you want to track Payroll and other HRMS operations for a Practitoner, create an Employee and link it here.","Ako želite pratiti obračun plaća i druge HRMS operacije za praktičara, stvorite zaposlenika i povežite ga ovdje.",
Set the Practitioner Schedule you just created. This will be used while booking appointments.,Postavite raspored praktičara koji ste upravo kreirali. Ovo će se koristiti prilikom rezervacije termina.,
Create a service item for Out Patient Consulting.,Stvorite stavku usluge za savjetovanje izvan pacijenata.,
"If this Healthcare Practitioner works for the In-Patient Department, create a service item for Inpatient Visits.","Ako ovaj zdravstveni radnik radi za stacionar, stvorite uslugu za stacionarne posjete.",
Set the Out Patient Consulting Charge for this Practitioner.,Postavite naknadu za konsultacije s pacijentom za ovog praktičara.,
"If this Healthcare Practitioner also works for the In-Patient Department, set the inpatient visit charge for this Practitioner.","Ako ovaj zdravstveni radnik radi i na stacionaru, postavite mu troškove stacionarnog posjeta.",
"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.","Ako se označi, stvorit će se kupac za svakog pacijenta. Računi za pacijenta stvorit će se protiv ovog kupca. Također možete odabrati postojećeg kupca tijekom stvaranja pacijenta. Ovo polje je standardno označeno.",
Collect Registration Fee,Naplati naknadu za registraciju,
"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.","Ako vaša zdravstvena ustanova obračunava registraciju pacijenata, možete to provjeriti i postaviti polje za registraciju u donjem polju. Ako provjerite ovo, stvorit će se novi pacijenti sa statusom onemogućenog prema zadanim postavkama i bit će omogućeni tek nakon fakturiranja naknade za registraciju.",
Checking this will automatically create a Sales Invoice whenever an appointment is booked for a Patient.,"Ako potvrdite ovo, automatski će se stvoriti faktura prodaje kad god se za pacijenta rezervira sastanak.",
Healthcare Service Items,Predmeti zdravstvene zaštite,
"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 ","Možete stvoriti stavku usluge za naplatu stacionarnih posjeta i postaviti je ovdje. Slično tome, u ovom odjeljku možete postaviti druge stavke zdravstvenih usluga za naplatu. Kliknite",
Set up default Accounts for the Healthcare Facility,Postavite zadane račune za zdravstvenu ustanovu,
"If you wish to override default accounts settings and configure the Income and Receivable accounts for Healthcare, you can do so here.","Ako želite zamijeniti zadane postavke računa i konfigurirati račune prihoda i potraživanja za zdravstvenu zaštitu, to možete učiniti ovdje.",
Out Patient SMS alerts,Upozorenja za SMS pacijenta,
"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 ","Ako želite poslati SMS upozorenje o registraciji pacijenta, možete omogućiti ovu opciju. Slično tome, u ovom odjeljku možete postaviti upozorenja za SMS pacijenta za druge funkcije. Kliknite",
Admission Order Details,Detalji naloga za prijem,
Admission Ordered For,Ulaz naređen za,
Expected Length of Stay,Očekivana dužina boravka,
Admission Service Unit Type,Vrsta jedinice usluge prijema,
Healthcare Practitioner (Primary),Zdravstveni radnik (primarni),
Healthcare Practitioner (Secondary),Zdravstveni radnik (sekundarni),
Admission Instruction,Uputstvo za prijem,
Chief Complaint,Žalba šefa,
Medications,Lijekovi,
Investigations,Istrage,
Discharge Detials,Ispuštanja,
Discharge Ordered Date,Datum otpuštanja,
Discharge Instructions,Upute za pražnjenje,
Follow Up Date,Datum praćenja,
Discharge Notes,Otpusne napomene,
Processing Inpatient Discharge,Obrada otpusta iz bolnice,
Processing Patient Admission,Obrada prijema pacijenta,
Check-in time cannot be greater than the current time,Vrijeme prijave ne može biti duže od trenutnog vremena,
Process Transfer,Prenos procesa,
HLC-LAB-.YYYY.-,FHP-LAB-.GGGG.-,
Expected Result Date,Očekivani datum rezultata,
Expected Result Time,Očekivano vrijeme rezultata,
Printed on,Odštampano,
Requesting Practitioner,Zahtjev za praktičarom,
Requesting Department,Odjel za podnošenje zahtjeva,
Employee (Lab Technician),Zaposlenik (laboratorijski tehničar),
Lab Technician Name,Ime laboratorijskog tehničara,
Lab Technician Designation,Oznaka laboratorijskog tehničara,
Compound Test Result,Rezultat složenog testa,
Organism Test Result,Rezultat testa organizma,
Sensitivity Test Result,Rezultat testa osjetljivosti,
Worksheet Print,Ispis radnog lista,
Worksheet Instructions,Upute za radni list,
Result Legend Print,Rezultat Legend Print,
Print Position,Položaj ispisa,
Bottom,Dno,
Top,Vrh,
Both,Oboje,
Result Legend,Legenda rezultata,
Lab Tests,Laboratorijski testovi,
No Lab Tests found for the Patient {0},Nisu pronađeni laboratorijski testovi za pacijenta {0},
"Did not send SMS, missing patient mobile number or message content.","Nisam poslao SMS, broj mobilnog telefona pacijenta ili sadržaj poruke.",
No Lab Tests created,Nije kreiran nijedan laboratorijski test,
Creating Lab Tests...,Izrada laboratorijskih testova ...,
Lab Test Group Template,Predložak grupe za laboratorijske testove,
Add New Line,Dodaj novu liniju,
Secondary UOM,Sekundarni UOM,
"<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>Pojedinačno</b> : Rezultati koji zahtijevaju samo jedan unos.<br> <b>Složeni</b> : Rezultati koji zahtijevaju višestruke unose događaja.<br> <b>Opisno</b> : Ispitivanja koja imaju više komponenata rezultata sa ručnim unosom rezultata.<br> <b>Grupirano</b> : Predlošci za testiranje koji su grupa ostalih predložaka za ispitivanje.<br> <b>Nema rezultata</b> : testovi bez rezultata mogu se naručiti i naplatiti, ali neće biti kreiran laboratorijski test. npr. Podtestovi za grupisane rezultate",
"If unchecked, the item will not be available in Sales Invoices for billing but can be used in group test creation. ","Ako se ne označi, stavka neće biti dostupna u fakturama prodaje za naplatu, ali se može koristiti u kreiranju grupnog testa.",
Description ,Opis,
Descriptive Test,Opisni test,
Group Tests,Grupni testovi,
Instructions to be printed on the worksheet,Upute za ispis na radnom listu,
"Information to help easily interpret the test report, will be printed as part of the Lab Test result.",Informacije koje će vam olakšati tumačenje izvještaja o ispitivanju bit će tiskane kao dio rezultata laboratorijskog testa.,
Normal Test Result,Uobičajeni rezultat testa,
Secondary UOM Result,Sekundarni rezultat UOM-a,
Italic,Kurziv,
Underline,Podvući,
Organism,Organizam,
Organism Test Item,Predmet ispitivanja organizma,
Colony Population,Stanovništvo kolonija,
Colony UOM,Colony UOM,
Tobacco Consumption (Past),Potrošnja duhana (prošlost),
Tobacco Consumption (Present),Potrošnja duhana (danas),
Alcohol Consumption (Past),Konzumacija alkohola (prošlost),
Alcohol Consumption (Present),Konzumacija alkohola (danas),
Billing Item,Predmet naplate,
Medical Codes,Medicinski kodovi,
Clinical Procedures,Klinički postupci,
Order Admission,Naručite prijem,
Scheduling Patient Admission,Zakazivanje prijema pacijenta,
Order Discharge,Naručite pražnjenje,
Sample Details,Detalji uzorka,
Collected On,Prikupljeno dana,
No. of prints,Broj otisaka,
Number of prints required for labelling the samples,Broj otisaka potrebnih za označavanje uzoraka,
HLC-VTS-.YYYY.-,FHP-VTS-.GGGG.-,
Payroll Cost Center,Centar troškova troškova zarada,
Approvers,Odobrivači,
The first Approver in the list will be set as the default Approver.,Prvi odobravatelj na listi postavit će se kao zadani odobravatelj.,
Shift Request Approver,Odobrivač zahtjeva za smjenom,
PAN Number,PAN broj,
Provident Fund Account,Račun osiguravajućeg fonda,
MICR Code,MICR kod,
Repay unclaimed amount from salary,Otplatite neiskorišteni iznos iz plate,
Deduction from salary,Odbitak od plate,
Expired Leaves,Isteklo lišće,
If this is not checked the loan by default will be considered as a Demand Loan,"Ako ovo nije potvrđeno, zajam će se prema zadanim postavkama smatrati zajmom na zahtjev",
This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,Ovaj račun koristi se za rezerviranje otplate zajma od zajmoprimca i za isplatu zajmova zajmoprimcu,
This account is capital account which is used to allocate capital for loan disbursal account ,Ovaj račun je račun kapitala koji se koristi za alokaciju kapitala za račun izdvajanja kredita,
This account will be used for booking loan interest accruals,Ovaj račun će se koristiti za rezerviranje obračunatih kamata,
This account will be used for booking penalties levied due to delayed repayments,Ovaj će se račun koristiti za rezerviranje penala zbog odgode otplate,
Variant BOM,Varijanta BOM,
Template Item,Predložak,
Select template item,Odaberite stavku predloška,
Select variant item code for the template item {0},Odaberite kod varijante stavke za stavku predloška {0},
Downtime Entry,Ulazak u stanke,
DT-,DT-,
Workstation / Machine,Radna stanica / mašina,
Operator,Operater,
In Mins,In Mins,
Downtime Reason,Razlog zastoja,
Stop Reason,Stop razumu,
Excessive machine set up time,Pretjerano vrijeme postavljanja stroja,
Unplanned machine maintenance,Neplanirano održavanje mašine,
On-machine press checks,Provjere tiska na mašini,
Machine operator errors,Greške rukovaoca mašine,
Machine malfunction,Kvar mašine,
Electricity down,Ispala struja,
Operation Row Number,Broj reda operacije,
Operation {0} added multiple times in the work order {1},Operacija {0} dodana više puta u radnom nalogu {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.","Ako se označi, za jedan radni nalog može se koristiti više materijala. Ovo je korisno ako se proizvodi jedan ili više dugotrajnih proizvoda.",
Backflush Raw Materials,Backflush sirovine,
"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.","Unos zaliha tipa &#39;Proizvodnja&#39; poznat je kao povratno ispiranje. Sirovine koje se troše za proizvodnju gotovih proizvoda poznate su kao povratno ispiranje.<br><br> Prilikom kreiranja stavke o proizvodnji, sirovinski proizvodi se vraćaju prema BOM proizvodnom proizvodu. Ako želite da se sirovinske stavke ponovo ispiru na osnovu unosa za prijenos materijala izvršenog prema tom radnom nalogu, onda ga možete postaviti u ovom polju.",
Work In Progress Warehouse,Skladište u toku,
This Warehouse will be auto-updated in the Work In Progress Warehouse field of Work Orders.,Ovo skladište će se automatski ažurirati u polju Skladište u toku u radnim nalozima.,
Finished Goods Warehouse,Skladište gotove robe,
This Warehouse will be auto-updated in the Target Warehouse field of Work Order.,Ovo skladište će se automatski ažurirati u polju ciljanog skladišta radnog naloga.,
"If ticked, the BOM cost will be automatically updated based on Valuation Rate / Price List Rate / last purchase rate of raw materials.","Ako se označi, BOM trošak će se automatski ažurirati na osnovu stope procjene / stope cjenika / posljednje stope otkupa sirovina.",
Source Warehouses (Optional),Izvorna skladišta (neobavezna),
"System will pickup the materials from the selected warehouses. If not specified, system will create material request for purchase.","Sistem će preuzeti materijale iz odabranih skladišta. Ako nije navedeno, sistem će stvoriti zahtjev za materijalom za kupovinu.",
Lead Time,Vodeće vrijeme,
PAN Details,PAN detalji,
Create Customer,Stvori kupca,
Invoicing,Fakturisanje,
Enable Auto Invoicing,Omogućite automatsko fakturiranje,
Send Membership Acknowledgement,Pošaljite potvrdu o članstvu,
Send Invoice with Email,Pošaljite fakturu e-poštom,
Membership Print Format,Format za ispis članstva,
Invoice Print Format,Format ispisa fakture,
Revoke <Key></Key>,Opozovi&lt;Key&gt;&lt;/Key&gt;,
You can learn more about memberships in the manual. ,U članku možete saznati više o članstvu.,
ERPNext Docs,ERPNext Docs,
Regenerate Webhook Secret,Obnovite tajnu Webhook-a,
Generate Webhook Secret,Generiraj Webhook Secret,
Copy Webhook URL,Kopirajte URL webhooka,
Linked Item,Povezani predmet,
Feedback By,Povratne informacije od,
Manufacturing Section,Odjel za proizvodnju,
"By default, the Customer Name is set as per the Full Name entered. If you want Customers to be named by a ","Po defaultu, Korisničko ime je postavljeno prema punom imenu. Ako želite da kupce imenuje a",
Configure the default Price List when creating a new Sales transaction. Item prices will be fetched from this Price List.,Konfigurirajte zadani cjenik prilikom kreiranja nove prodajne transakcije. Cijene stavki će se preuzeti iz ovog cjenika.,
"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.","Ako je ova opcija konfigurirana kao &quot;Da&quot;, ERPNext će vas spriječiti da kreirate fakturu ili napomenu o isporuci bez prethodnog kreiranja narudžbenice. Ovu konfiguraciju može se nadjačati za određenog Kupca omogućavanjem potvrdnog okvira &#39;Omogući izradu fakture za prodaju bez prodajnog naloga&#39; u masteru kupca.",
"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.","Ako je ova opcija konfigurisana kao &quot;Da&quot;, ERPNext će vas spriječiti u stvaranju fakture prodaje bez prethodnog kreiranja bilješke o isporuci. Ovu konfiguraciju možete nadjačati za određenog kupca tako što ćete omogućiti potvrdni okvir &#39;Omogući izradu fakture za prodaju bez napomene o isporuci&#39; u masteru kupca.",
Default Warehouse for Sales Return,Zadani magacin za povratak prodaje,
Default In Transit Warehouse,Zadani u tranzitnom skladištu,
Enable Perpetual Inventory For Non Stock Items,Omogućite trajni inventar za stavke koje nisu na zalihi,
HRA Settings,Postavke HRA,
Basic Component,Osnovna komponenta,
HRA Component,HRA komponenta,
Arrear Component,Komponenta zaostatka,
Please enter the company name to confirm,Unesite naziv kompanije za potvrdu,
Quotation Lost Reason Detail,Detalj izgubljenog razloga ponude,
Enable Variants,Omogući varijante,
Save Quotations as Draft,Sačuvajte ponude kao skice,
MAT-DN-RET-.YYYY.-,MAT-DN-RET-.GGGG.-,
Please Select a Customer,Molimo odaberite kupca,
Against Delivery Note Item,Protiv stavke naloga za isporuku,
Is Non GST ,Nije GST,
Image Description,Opis slike,
Transfer Status,Status prijenosa,
MAT-PR-RET-.YYYY.-,MAT-PR-RET-.GGGG.-,
Track this Purchase Receipt against any Project,Pratite ovu potvrdu o kupovini prema bilo kojem projektu,
Please Select a Supplier,Molimo odaberite dobavljača,
Add to Transit,Dodaj u tranzit,
Set Basic Rate Manually,Ručno postavite osnovnu stopu,
"By default, the Item Name is set as per the Item Code entered. If you want Items to be named by a ","Prema zadanim postavkama, naziv predmeta je postavljen prema unesenom kodu artikla. Ako želite da stavke imenuje",
Set a Default Warehouse for Inventory Transactions. This will be fetched into the Default Warehouse in the Item master.,Postavljanje zadanog skladišta za transakcije zalihama. Ovo će se dohvatiti u Zadani magacin u masteru predmeta.,
"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.","To će omogućiti prikazivanje zaliha u negativnim vrijednostima. Korištenje ove opcije ovisi o vašem slučaju korištenja. Ako ova opcija nije potvrđena, sistem upozorava prije nego što ometa transakciju koja uzrokuje negativne zalihe.",
Choose between FIFO and Moving Average Valuation Methods. Click ,Izaberite između metoda FIFO i metoda procjene pokretnog prosjeka. Kliknite,
 to know more about them.,da znam više o njima.,
Show 'Scan Barcode' field above every child table to insert Items with ease.,Pokažite polje „Skeniraj crtični kod“ iznad svake podređene tablice da biste s lakoćom umetnuli predmete.,
"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.","Serijski brojevi zaliha automatski će se postaviti na osnovu stavki koje se unose na osnovu first in first out u transakcijama poput faktura kupovine / prodaje, otpremnica itd.",
"If blank, parent Warehouse Account or company default will be considered in transactions","Ako je prazno, u transakcijama će se uzeti u obzir matični račun skladišta ili zadana vrijednost kompanije",
Service Level Agreement Details,Detalji sporazuma o nivou usluge,
Service Level Agreement Status,Status sporazuma o nivou usluge,
On Hold Since,Na čekanju od,
Total Hold Time,Ukupno vrijeme zadržavanja,
Response Details,Detalji odgovora,
Average Response Time,Prosječno vrijeme odziva,
User Resolution Time,Vrijeme razlučivanja korisnika,
SLA is on hold since {0},SLA je na čekanju od {0},
Pause SLA On Status,Pauzirajte SLA na statusu,
Pause SLA On,Pauzirajte SLA Uključeno,
Greetings Section,Pozdravni odjeljak,
Greeting Title,Pozdravni naslov,
Greeting Subtitle,Pozdravni titl,
Youtube ID,Youtube ID,
Youtube Statistics,Youtube Statistika,
Views,Pregledi,
Dislikes,Ne voli,
Video Settings,Video Settings,
Enable YouTube Tracking,Omogućite YouTube praćenje,
30 mins,30 min,
1 hr,1 h,
6 hrs,6 sati,
Patient Progress,Napredak pacijenta,
Targetted,Ciljano,
Score Obtained,Rezultat dobijen,
Sessions,Sesije,
Average Score,Prosječna ocjena,
Select Assessment Template,Odaberite predložak procjene,
 out of ,van,
Select Assessment Parameter,Odaberite parametar procjene,
Gender: ,Spol:,
Contact: ,Kontakt:,
Total Therapy Sessions: ,Ukupno terapijskih sesija:,
Monthly Therapy Sessions: ,Mjesečne terapijske sesije:,
Patient Profile,Profil pacijenta,
Point Of Sale,Mjestu prodaje,
Email sent successfully.,E-pošta je uspješno poslana.,
Search by invoice id or customer name,Pretražujte prema ID-u fakture ili imenu kupca,
Invoice Status,Status fakture,
Filter by invoice status,Filtriraj prema statusu fakture,
Select item group,Odaberite grupu stavki,
No items found. Scan barcode again.,Predmeti nisu pronađeni. Ponovo skenirajte crtični kod.,
"Search by customer name, phone, email.","Pretražujte po imenu kupca, telefonu, e-pošti.",
Enter discount percentage.,Unesite postotak popusta.,
Discount cannot be greater than 100%,Popust ne može biti veći od 100%,
Enter customer's email,Unesite e-poštu kupca,
Enter customer's phone number,Unesite telefonski broj kupca,
Customer contact updated successfully.,Kontakt s kupcem je uspješno ažuriran.,
Item will be removed since no serial / batch no selected.,Stavka će biti uklonjena jer nije odabrana nijedna serijska serija.,
Discount (%),Popust (%),
You cannot submit the order without payment.,Ne možete poslati narudžbu bez plaćanja.,
You cannot submit empty order.,Ne možete poslati praznu narudžbu.,
To Be Paid,Da se plati,
Create POS Opening Entry,Kreirajte unos za otvaranje POS-a,
Please add Mode of payments and opening balance details.,Molimo dodajte detalje o načinu plaćanja i početnom stanju.,
Toggle Recent Orders,Uključi / isključi nedavne narudžbe,
Save as Draft,Spremiti kao nacrt,
You must add atleast one item to save it as draft.,Morate dodati najmanje jednu stavku da biste je sačuvali kao skicu.,
There was an error saving the document.,Došlo je do greške prilikom spremanja dokumenta.,
You must select a customer before adding an item.,Morate odabrati kupca prije dodavanja stavke.,
Please Select a Company,Molimo odaberite kompaniju,
Active Leads,Active Leads,
Please Select a Company.,Molimo odaberite kompaniju.,
BOM Operations Time,BOM operativno vrijeme,
BOM ID,BOM ID,
BOM Item Code,Šifra predmeta BOM,
Time (In Mins),Vrijeme (u minutama),
Sub-assembly BOM Count,Broj sastavnih dijelova podsklopa,
View Type,Vrsta prikaza,
Total Delivered Amount,Ukupni isporučeni iznos,
Downtime Analysis,Analiza zastoja,
Machine,Mašina,
Downtime (In Hours),Zastoji (u satima),
Employee Analytics,Analitika zaposlenih,
"""From date"" can not be greater than or equal to ""To date""",&quot;Od datuma&quot; ne može biti veći ili jednak &quot;Do danas&quot;,
Exponential Smoothing Forecasting,Eksponencijalno izglađivanje predviđanja,
First Response Time for Issues,Vrijeme prvog odgovora na izdanja,
First Response Time for Opportunity,Prvo vrijeme odgovora za priliku,
Depreciatied Amount,Amortizirani iznos,
Period Based On,Period zasnovan na,
Date Based On,Datum zasnovan,
{0} and {1} are mandatory,{0} i {1} su obavezni,
Consider Accounting Dimensions,Razmotrite računovodstvene dimenzije,
Reserved Quantity for Production,Rezervisana količina za proizvodnju,
Projected Quantity,Predviđena količina,
 Total Sales Amount,Ukupan iznos prodaje,
Job Card Summary,Sažetak kartice posla,
Id,Id,
Time Required (In Mins),Potrebno vrijeme (u minutama),
From Posting Date,Od datuma knjiženja,
To Posting Date,Do datuma knjiženja,
No records found,Nije pronađen nijedan zapis,
Customer/Lead Name,Ime kupca / potencijalnog klijenta,
Production Planning Report,Izvještaj o planiranju proizvodnje,
Order Qty,Naruči Kol,
Raw Material Code,Šifra sirovina,
Raw Material Name,Naziv sirovine,
Allotted Qty,Dodijeljena količina,
Expected Arrival Date,Očekivani datum dolaska,
Arrival Quantity,Količina dolaska,
Raw Material Warehouse,Skladište sirovina,
Order By,Poredak po,
Include Sub-assembly Raw Materials,Uključite sirovine podsklopa,
Program wise Fee Collection,Programska naplata naknada,
Fees Collected,Naknade naplaćene,
Project Summary,Sažetak projekta,
Total Tasks,Ukupno zadataka,
Tasks Completed,Zadaci izvršeni,
Tasks Overdue,Zadaci kasne,
Completion,Završetak,
Purchase Order Analysis,Analiza narudžbenice,
From and To Dates are required.,Potrebni su datumi od i do.,
To Date cannot be before From Date.,Do datuma ne može biti prije od datuma.,
Qty to Bill,Količina za Billa,
Group by Purchase Order,Grupiraj prema narudžbenici,
 Purchase Value,Nabavna vrijednost,
Total Received Amount,Ukupni primljeni iznos,
Quality Inspection Summary,Sažetak inspekcije kvaliteta,
 Quoted Amount,Citirani iznos,
Lead Time (Days),Vrijeme izvođenja (dani),
Include Expired,Uključi Isteklo,
Requested Items to Order and Receive,Tražene stavke za naručivanje i primanje,
Sales Order Analysis,Analiza naloga za prodaju,
Amount Delivered,Isporučeni iznos,
Delay (in Days),Kašnjenje (u danima),
Group by Sales Order,Grupiranje prema prodajnom nalogu,
 Sales Value,Vrijednost prodaje,
Stock Qty vs Serial No Count,Količina zaliha u odnosu na serijski broj,
Serial No Count,Broj serijskog broja,
Work Order Summary,Sažetak radnog naloga,
Produce Qty,Količina proizvoda,
Lead Time (in mins),Vrijeme izvođenja (u minutama),
Charts Based On,Grafikoni zasnovani na,
YouTube Interactions,YouTube interakcije,
Published Date,Datum objavljivanja,
Barnch,Barnch,
Select a Company,Odaberite kompaniju,
Opportunity {0} created,Stvorena prilika {0},
Kindly select the company first,Molimo vas da prvo odaberete kompaniju,
Please enter From Date and To Date to generate JSON,Unesite From Date i To Date da biste generirali JSON,
Download DATEV File,Preuzmite datoteku DATEV,
Numero has not set in the XML file,Numero nije postavljen u XML datoteku,
Inward Supplies(liable to reverse charge),Unutarnje zalihe (podložne storniranju),
This is based on the course schedules of this Instructor,Ovo se zasniva na rasporedu kurseva ovog instruktora,
Course and Assessment,Kurs i procjena,
Course {0} has been added to all the selected programs successfully.,Kurs {0} je uspješno dodan svim odabranim programima.,
Programs updated,Programi ažurirani,
Program and Course,Program i kurs,
{0} or {1} is mandatory,{0} ili {1} je obavezno,
Mandatory Fields,Obavezna polja,
Student {0}: {1} does not belong to Student Group {2},Student {0}: {1} ne pripada studentskoj grupi {2},
Student Attendance record {0} already exists against the Student {1},Evidencija o posjećenosti učenika {0} već postoji protiv učenika {1},
Course and Fee,Kurs i naknada,
Not eligible for the admission in this program as per Date Of Birth,Ne ispunjava uslove za prijem u ovaj program prema datumu rođenja,
Topic {0} has been added to all the selected courses successfully.,Tema {0} uspješno je dodana na sve odabrane kurseve.,
Courses updated,Kursevi ažurirani,
{0} {1} has been added to all the selected topics successfully.,{0} {1} je uspješno dodan u sve odabrane teme.,
Topics updated,Teme ažurirane,
Academic Term and Program,Akademski termin i program,
Please remove this item and try to submit again or update the posting time.,Uklonite ovu stavku i pokušajte je ponovo poslati ili ažurirajte vrijeme objavljivanja.,
Failed to Authenticate the API key.,Autentifikacija API ključa nije uspjela.,
Invalid Credentials,Nevažeće vjerodajnice,
URL can only be a string,URL može biti samo niz,
"Here is your webhook secret, this will be shown to you only once.","Evo vaše tajne webhook-a, ovo će vam biti prikazano samo jednom.",
The payment for this membership is not paid. To generate invoice fill the payment details,Plaćanje za ovo članstvo nije plaćeno. Za generiranje fakture popunite detalje o plaćanju,
An invoice is already linked to this document,Račun je već povezan s ovim dokumentom,
No customer linked to member {},Nijedan kupac nije povezan sa članom {},
You need to set <b>Debit Account</b> in Membership Settings,U postavkama članstva morate postaviti <b>račun za zaduživanje</b>,
You need to set <b>Default Company</b> for invoicing in Membership Settings,U postavkama članstva morate postaviti <b>zadanu kompaniju</b> za fakturiranje,
You need to enable <b>Send Acknowledge Email</b> in Membership Settings,U postavkama članstva morate omogućiti <b>e-poštu</b> za <b>slanje potvrde</b>,
Error creating membership entry for {0},Greška pri kreiranju unosa za članstvo za {0},
A customer is already linked to this Member,Kupac je već povezan s ovim članom,
End Date must not be lesser than Start Date,Datum završetka ne smije biti manji od datuma početka,
Employee {0} already has Active Shift {1}: {2},Zaposlenik {0} već ima aktivnu smjenu {1}: {2},
 from {0},od {0},
 to {0},do {0},
Please set {0} for the Employee or for Department: {1},Postavite {0} za zaposlenika ili za odjel: {1},
Employee Onboarding: {0} is already for Job Applicant: {1},Ukrcavanje zaposlenih: {0} je već za kandidata za posao: {1},
Asset Value Analytics,Analitika vrijednosti imovine,
Category-wise Asset Value,Vrijednost imovine prema kategorijama,
Total Assets,Ukupna imovina,
New Assets (This Year),Nova imovina (ove godine),
Row #{}: Depreciation Posting Date should not be equal to Available for Use Date.,Red # {}: Datum knjiženja amortizacije ne bi trebao biti jednak datumu Dostupno za upotrebu.,
Incorrect Date,Netačan datum,
Invalid Gross Purchase Amount,Nevažeći bruto iznos kupovine,
There are active maintenance or repairs against the asset. You must complete all of them before cancelling the asset.,Aktivno se održavaju ili popravljaju sredstva. Morate ih popuniti prije nego što otkažete sredstvo.,
% Complete,% Kompletno,
Back to Course,Povratak na kurs,
Finish Topic,Završi temu,
Mins,Min,
by,by,
Back to,Povratak na,
Enrolling...,Upis ...,
You have successfully enrolled for the program ,Uspješno ste se prijavili za program,
Enrolled,Upisan,
Watch Intro,Pogledajte uvod,
We're here to help!,Ovdje smo da vam pomognemo!,
Frequently Read Articles,Članci koji se često čitaju,
Please set a default company address,Molimo postavite zadanu adresu kompanije,
{0} is not a valid state! Check for typos or enter the ISO code for your state.,{0} nije važeće stanje! Provjerite ima li grešaka u kucanju ili unesite ISO kod za svoje stanje.,
Error occured while parsing Chart of Accounts: Please make sure that no two accounts have the same name,Došlo je do greške prilikom raščlanjivanja kontnog plana: Uvjerite se da niti jedan račun nema isto ime,
Plaid invalid request error,Pogreška nevažećeg zahtjeva karira,
Please check your Plaid client ID and secret values,Molimo provjerite svoj ID klijenta i tajne vrijednosti,
Bank transaction creation error,Greška u kreiranju bankovne transakcije,
Unit of Measurement,Mjerna jedinica,
Fiscal Year {0} Does Not Exist,Fiskalna godina {0} ne postoji,
Row # {0}: Returned Item {1} does not exist in {2} {3},Redak {0}: Vraćena stavka {1} ne postoji u {2} {3},
Valuation type charges can not be marked as Inclusive,Naknade za vrstu vrednovanja ne mogu se označiti kao sveobuhvatne,
You do not have permissions to {} items in a {}.,Nemate dozvole za {} stavki u {}.,
Insufficient Permissions,Nedovoljna dozvola,
You are not allowed to update as per the conditions set in {} Workflow.,Nije vam dozvoljeno ažuriranje prema uvjetima postavljenim u {} Tok rada.,
Expense Account Missing,Račun troškova nedostaje,
{0} is not a valid Value for Attribute {1} of Item {2}.,{0} nije važeća vrijednost za atribut {1} stavke {2}.,
Invalid Value,Nevažeća vrijednost,
The value {0} is already assigned to an existing Item {1}.,Vrijednost {0} je već dodijeljena postojećoj stavci {1}.,
"To still proceed with editing this Attribute Value, enable {0} in Item Variant Settings.","Da i dalje nastavite s uređivanjem ove vrijednosti atributa, omogućite {0} u Postavkama varijante stavke.",
Edit Not Allowed,Uređivanje nije dozvoljeno,
Row #{0}: Item {1} is already fully received in Purchase Order {2},Redak {0}: Stavka {1} je već u potpunosti primljena u narudžbenici {2},
You cannot create or cancel any accounting entries with in the closed Accounting Period {0},Ne možete kreirati ili otkazati nijedan knjigovodstveni zapis u zatvorenom obračunskom periodu {0},
POS Invoice should have {} field checked.,POS račun mora imati označeno polje {}.,
Invalid Item,Nevažeća stavka,
Row #{}: You cannot add postive quantities in a return invoice. Please remove item {} to complete the return.,Red # {}: Ne možete dodati pozitivne količine u fakturu za povrat. Uklonite stavku {} da biste dovršili povrat.,
The selected change account {} doesn't belongs to Company {}.,Odabrani račun za promjenu {} ne pripada Kompaniji {}.,
Atleast one invoice has to be selected.,Mora biti izabrana najmanje jedna faktura.,
Payment methods are mandatory. Please add at least one payment method.,Načini plaćanja su obavezni. Dodajte barem jedan način plaćanja.,
Please select a default mode of payment,Odaberite zadani način plaćanja,
You can only select one mode of payment as default,Možete odabrati samo jedan način plaćanja kao zadani,
Missing Account,Nedostaje račun,
Customers not selected.,Kupci nisu odabrani.,
Statement of Accounts,Izvod računa,
Ageing Report Based On ,Izvještaj o starenju na osnovu,
Please enter distributed cost center,Unesite raspodijeljeno mjesto troškova,
Total percentage allocation for distributed cost center should be equal to 100,Ukupna alokacija u procentima za raspodijeljeno mjesto troškova trebala bi biti jednaka 100,
Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center,Ne može se omogućiti raspodijeljeno mjesto troškova za mjesto troškova koje je već dodijeljeno u drugom raspodijeljenom mjestu troškova,
Parent Cost Center cannot be added in Distributed Cost Center,Nadređeno mjesto troškova ne može se dodati u distribuirano mjesto troškova,
A Distributed Cost Center cannot be added in the Distributed Cost Center allocation table.,Distribuirano mjesto troškova ne može se dodati u tablicu raspodjele mjesta troškova.,
Cost Center with enabled distributed cost center can not be converted to group,Mjesto troškova s omogućenim distribuiranim mjestom troškova ne može se pretvoriti u grupu,
Cost Center Already Allocated in a Distributed Cost Center cannot be converted to group,Već dodijeljeno mjesto troškova u distribuiranom mjestu troškova ne može se pretvoriti u grupu,
Trial Period Start date cannot be after Subscription Start Date,Datum početka probnog razdoblja ne može biti nakon datuma početka pretplate,
Subscription End Date must be after {0} as per the subscription plan,Datum završetka pretplate mora biti nakon {0} prema planu pretplate,
Subscription End Date is mandatory to follow calendar months,Krajnji datum pretplate je obavezan za kalendarske mjesece,
Row #{}: POS Invoice {} is not against customer {},Red # {}: POS faktura {} nije protiv kupca {},
Row #{}: POS Invoice {} is not submitted yet,Redak {{}: POS faktura {} još nije dostavljena,
Row #{}: POS Invoice {} has been {},Red # {}: POS faktura {} je {},
No Supplier found for Inter Company Transactions which represents company {0},Nije pronađen dobavljač za transakcije među kompanijama koji predstavljaju kompaniju {0},
No Customer found for Inter Company Transactions which represents company {0},Nije pronađen nijedan kupac za transakcije kompanije koje predstavljaju kompaniju {0},
Invalid Period,Nevažeće razdoblje,
Selected POS Opening Entry should be open.,Odabrani unos za otvaranje POS-a trebao bi biti otvoren.,
Invalid Opening Entry,Nevažeći uvodni unos,
Please set a Company,Molimo postavite kompaniju,
"Sorry, this coupon code's validity has not started","Nažalost, valjanost ovog koda kupona nije započela",
"Sorry, this coupon code's validity has expired","Nažalost, valjanost ovog koda kupona je istekla",
"Sorry, this coupon code is no longer valid","Žao nam je, ovaj kod kupona više nije važeći",
For the 'Apply Rule On Other' condition the field {0} is mandatory,Za uvjet &quot;Primijeni pravilo na ostalo&quot; polje {0} je obavezno,
{1} Not in Stock,{1} Nije na lageru,
Only {0} in Stock for item {1},Na skladištu za artikal {1} samo {0},
Please enter a coupon code,Unesite kod kupona,
Please enter a valid coupon code,Unesite važeći kôd kupona,
Invalid Child Procedure,Nevažeća procedura za dijete,
Import Italian Supplier Invoice.,Uvoz fakture italijanskog dobavljača.,
"Valuation Rate for the Item {0}, is required to do accounting entries for {1} {2}.",Stopa procjene za stavku {0} potrebna je za knjiženje knjigovodstvenih evidencija za {1} {2}.,
 Here are the options to proceed:,Evo opcija za nastavak:,
"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.","Ako stavka trguje kao stavka nulte stope vrednovanja u ovom unosu, omogućite &#39;Dopusti nultu stopu vrednovanja&#39; u tablici {0} Stavka.",
"If not, you can Cancel / Submit this entry ","Ako ne, možete otkazati / poslati ovaj unos",
 performing either one below:,izvodeći bilo koji dole:,
Create an incoming stock transaction for the Item.,Kreirajte dolaznu transakciju zaliha za Artikal.,
Mention Valuation Rate in the Item master.,Spomenite stopu vrednovanja u glavnom predmetu.,
Valuation Rate Missing,Nedostaje stopa procjene,
Serial Nos Required,Potrebni su serijski brojevi,
Quantity Mismatch,Količina neusklađenosti,
"Please Restock Items and Update the Pick List to continue. To discontinue, cancel the Pick List.","Molimo vas da ponovo nastavite sa proizvodima i ažurirate listu za odabir da biste nastavili. Da biste prekinuli, otkažite Pick List.",
Out of Stock,Nema na zalihi,
{0} units of Item {1} is not available.,{0} jedinica stavke {1} nije dostupno.,
Item for row {0} does not match Material Request,Stavka za red {0} se ne podudara sa zahtjevom za materijal,
Warehouse for row {0} does not match Material Request,Skladište za red {0} ne odgovara zahtjevu za materijalom,
Accounting Entry for Service,Knjigovodstveni unos usluge,
All items have already been Invoiced/Returned,Sve stavke su već fakturirane / vraćene,
All these items have already been Invoiced/Returned,Sve ove stavke su već fakturirane / vraćene,
Stock Reconciliations,Pomirenje dionica,
Merge not allowed,Spajanje nije dozvoljeno,
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.,"Sljedeći izbrisani atributi postoje u varijantama, ali ne i u predlošku. Možete izbrisati varijante ili zadržati atribut (e) u predlošku.",
Variant Items,Variant Items,
Variant Attribute Error,Pogreška varijante atributa,
The serial no {0} does not belong to item {1},Serijski broj {0} ne pripada stavci {1},
There is no batch found against the {0}: {1},Nije pronađena serija protiv {0}: {1},
Completed Operation,Završena operacija,
Work Order Analysis,Analiza radnog naloga,
Quality Inspection Analysis,Analiza inspekcije kvaliteta,
Pending Work Order,Na čekanju radni nalog,
Last Month Downtime Analysis,Analiza zastoja posljednjeg mjeseca,
Work Order Qty Analysis,Analiza količine radnog naloga,
Job Card Analysis,Analiza radnih mjesta,
Monthly Total Work Orders,Ukupni mjesečni nalozi za rad,
Monthly Completed Work Orders,Mjesečno izvršeni nalozi za rad,
Ongoing Job Cards,Kartice za posao u toku,
Monthly Quality Inspections,Mjesečne provjere kvaliteta,
(Forecast),(Prognoza),
Total Demand (Past Data),Ukupna potražnja (prošli podaci),
Total Forecast (Past Data),Ukupna prognoza (prošli podaci),
Total Forecast (Future Data),Ukupna prognoza (budući podaci),
Based On Document,Na osnovu dokumenta,
Based On Data ( in years ),Na osnovu podataka (u godinama),
Smoothing Constant,Smoothing Constant,
Please fill the Sales Orders table,Molimo popunite tablicu Prodajni nalozi,
Sales Orders Required,Potrebni nalozi za prodaju,
Please fill the Material Requests table,Molimo popunite tablicu Zahtjevi za materijalom,
Material Requests Required,Zahtjevi za materijal,
Items to Manufacture are required to pull the Raw Materials associated with it.,Proizvodi za proizvodnju dužni su povući sirovine povezane s tim.,
Items Required,Predmeti potrebni,
Operation {0} does not belong to the work order {1},Operacija {0} ne pripada radnom nalogu {1},
Print UOM after Quantity,Ispis UOM nakon količine,
Set default {0} account for perpetual inventory for non stock items,Postavite zadani {0} račun za vječni inventar za stavke koje nisu na zalihi,
Row #{0}: Child Item should not be a Product Bundle. Please remove Item {1} and Save,Redak {0}: Podređena stavka ne bi trebala biti paket proizvoda. Uklonite stavku {1} i spremite,
Credit limit reached for customer {0},Dosegnuto kreditno ograničenje za kupca {0},
Could not auto create Customer due to the following missing mandatory field(s):,Nije moguće automatski kreirati kupca zbog sljedećih obaveznih polja koja nedostaju:,
Please create Customer from Lead {0}.,Kreirajte kupca od potencijalnog klijenta {0}.,
Mandatory Missing,Obavezno nedostaje,
From Date can not be greater than To Date.,Od datuma ne može biti veći od datuma.,
Row #{0}: Please enter the result value for {1},Redak {0}: Unesite vrijednost rezultata za {1},
Mandatory Results,Obavezni rezultati,
Sales Invoice or Patient Encounter is required to create Lab Tests,Račun za prodaju ili susret pacijenta potreban je za izradu laboratorijskih testova,
Insufficient Data,Nedovoljno podataka,
Lab Test(s) {0} created successfully,Laboratorijski testovi {0} su uspješno stvoreni,
Test :,Test:,
Sample Collection {0} has been created,Zbirka uzoraka {0} je kreirana,
Normal Range: ,Uobičajeni domet:,
Row #{0}: Check Out datetime cannot be less than Check In datetime,Redak {0}: Datum odjave ne može biti manji od datuma i vremena prijave,
"Missing required details, did not create Inpatient Record","Nedostaju potrebni detalji, nije stvorena stacionarna evidencija",
Unbilled Invoices,Nefakturirane fakture,
Standard Selling Rate should be greater than zero.,Standardna stopa prodaje trebala bi biti veća od nule.,
Conversion Factor is mandatory,Faktor konverzije je obavezan,
Row #{0}: Conversion Factor is mandatory,Redak {0}: Faktor konverzije je obavezan,
Sample Quantity cannot be negative or 0,Količina uzorka ne može biti negativna ili 0,
Invalid Quantity,Nevažeća količina,
"Please set defaults for Customer Group, Territory and Selling Price List in Selling Settings","Molimo postavite zadane postavke za Grupu kupaca, Teritoriju i Cjenik prodaje u Postavkama prodaje",
{0} on {1},{0} na {1},
{0} with {1},{0} sa {1},
Appointment Confirmation Message Not Sent,Poruka o potvrdi imenovanja nije poslana,
"SMS not sent, please check SMS Settings","SMS nije poslan, provjerite postavke SMS-a",
Healthcare Service Unit Type cannot have both {0} and {1},Tip jedinice zdravstvene službe ne može imati i {0} i {1},
Healthcare Service Unit Type must allow atleast one among {0} and {1},Tip zdravstvene jedinice mora dopustiti najmanje jedan između {0} i {1},
Set Response Time and Resolution Time for Priority {0} in row {1}.,Postavite vrijeme odziva i vrijeme razlučivanja za prioritet {0} u redu {1}.,
Response Time for {0} priority in row {1} can't be greater than Resolution Time.,Vrijeme odziva za {0} prioritet u redu {1} ne može biti veće od vremena razlučivanja.,
{0} is not enabled in {1},{0} nije omogućen u {1},
Group by Material Request,Grupiraj prema zahtjevu za materijal,
Email Sent to Supplier {0},E-pošta poslana dobavljaču {0},
"The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.","Pristup zahtjevu za ponudu sa portala je onemogućen. Da biste omogućili pristup, omogućite ga u postavkama portala.",
Supplier Quotation {0} Created,Ponuda dobavljača {0} kreirana,
Valid till Date cannot be before Transaction Date,Važi do datuma ne može biti prije datuma transakcije,
Unlink Advance Payment on Cancellation of Order,Prekinite vezu s avansnim plaćanjem nakon otkazivanja narudžbe,
"Simple Python Expression, Example: territory != 'All Territories'","Jednostavan Python izraz, primjer: teritorij! = &#39;Sve teritorije&#39;",
Sales Contributions and Incentives,Doprinosi prodaji i podsticaji,
Sourced by Supplier,Izvor dobavljača,
Total weightage assigned should be 100%.<br>It is {0},Ukupna dodijeljena težina treba biti 100%.<br> {0} je,
Account {0} exists in parent company {1}.,Račun {0} postoji u matičnoj kompaniji {1}.,
"To overrule this, enable '{0}' in company {1}","Da biste ovo prevladali, omogućite &#39;{0}&#39; u kompaniji {1}",
Invalid condition expression,Nevažeći izraz stanja,
Please Select a Company First,Prvo odaberite kompaniju,
Please Select Both Company and Party Type First,Molimo odaberite prvo vrstu kompanije i stranke,
Provide the invoice portion in percent,Navedite dio fakture u procentima,
Give number of days according to prior selection,Navedite broj dana prema prethodnom odabiru,
Email Details,Detalji e-pošte,
"Select a greeting for the receiver. E.g. Mr., Ms., etc.","Odaberite pozdrav za prijemnik. Npr. Gospodin, gospođa itd.",
Preview Email,Pregled e-pošte,
Please select a Supplier,Molimo odaberite dobavljača,
Supplier Lead Time (days),Vrijeme isporuke dobavljača (dana),
"Home, Work, etc.","Kuća, posao itd.",
Exit Interview Held On,Izlazni intervju održan,
Sets 'Target Warehouse' in each row of the Items table.,Postavlja &#39;Ciljno skladište&#39; u svaki red tabele Predmeti.,
Sets 'Source Warehouse' in each row of the Items table.,Postavlja &#39;Izvorno skladište&#39; u svaki red tabele Predmeti.,
POS Register,POS registar,
"Can not filter based on POS Profile, if grouped by POS Profile","Ne može se filtrirati na osnovu POS profila, ako je grupirano po POS profilu",
"Can not filter based on Customer, if grouped by Customer","Ne može se filtrirati prema kupcu, ako ga grupiše kupac",
"Can not filter based on Cashier, if grouped by Cashier","Ne može se filtrirati na osnovu blagajne, ako je grupirana po blagajni",
Payment Method,Način plaćanja,
"Can not filter based on Payment Method, if grouped by Payment Method","Ne može se filtrirati na osnovu načina plaćanja, ako je grupirano prema načinu plaćanja",
Supplier Quotation Comparison,Usporedba ponuda dobavljača,
Price per Unit (Stock UOM),Cijena po jedinici (zaliha UOM),
Group by Supplier,Grupa prema dobavljaču,
Group by Item,Grupiraj po stavkama,
Remember to set {field_label}. It is required by {regulation}.,Ne zaboravite postaviti {field_label}. To zahtijeva {propis}.,
Enrollment Date cannot be before the Start Date of the Academic Year {0},Datum upisa ne može biti pre datuma početka akademske godine {0},
Enrollment Date cannot be after the End Date of the Academic Term {0},Datum upisa ne može biti nakon datuma završetka akademskog roka {0},
Enrollment Date cannot be before the Start Date of the Academic Term {0},Datum upisa ne može biti pre datuma početka akademskog roka {0},
Future Posting Not Allowed,Objavljivanje u budućnosti nije dozvoljeno,
"To enable Capital Work in Progress Accounting, ","Da bi se omogućilo računovodstvo kapitalnog rada u toku,",
you must select Capital Work in Progress Account in accounts table,u tablici računa morate odabrati Račun kapitalnog rada u toku,
You can also set default CWIP account in Company {},Također možete postaviti zadani CWIP račun u kompaniji {},
The Request for Quotation can be accessed by clicking on the following button,Zahtjevu za ponudu možete pristupiti klikom na sljedeće dugme,
Regards,Pozdrav,
Please click on the following button to set your new password,Kliknite na sljedeći gumb da biste postavili novu lozinku,
Update Password,Ažuriraj lozinku,
Row #{}: Selling rate for item {} is lower than its {}. Selling {} should be atleast {},Red # {}: Stopa prodaje predmeta {} niža je od njegove {}. Prodaja {} treba biti najmanje {},
You can alternatively disable selling price validation in {} to bypass this validation.,Alternativno možete onemogućiti provjeru prodajne cijene u {} da biste zaobišli ovu provjeru.,
Invalid Selling Price,Nevažeća prodajna cijena,
Address needs to be linked to a Company. Please add a row for Company in the Links table.,Adresa mora biti povezana sa kompanijom. Dodajte red za kompaniju u tabelu veza.,
Company Not Linked,Kompanija nije povezana,
Import Chart of Accounts from CSV / Excel files,Uvezite kontni plan iz CSV / Excel datoteka,
Completed Qty cannot be greater than 'Qty to Manufacture',Završena količina ne može biti veća od &#39;Količina za proizvodnju&#39;,
"Row {0}: For Supplier {1}, Email Address is Required to send an email",Red {0}: Za dobavljača {1} za slanje e-pošte potrebna je adresa e-pošte,
"If enabled, the system will post accounting entries for inventory automatically","Ako je omogućeno, sistem će automatski knjižiti knjigovodstvene evidencije zaliha",
Accounts Frozen Till Date,Računi zamrznuti do datuma,
Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below,Knjigovodstvene stavke su zamrznute do danas. Nitko ne može stvarati ili mijenjati unose osim korisnika s ulogom navedenom u nastavku,
Role Allowed to Set Frozen Accounts and Edit Frozen Entries,Dopuštena uloga za postavljanje zamrznutih računa i uređivanje zamrznutih unosa,
Address used to determine Tax Category in transactions,Adresa koja se koristi za određivanje kategorije poreza u transakcijama,
"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 ","Procenat koji vam je dozvoljen da naplatite više u odnosu na naručeni iznos. Na primjer, ako vrijednost narudžbe iznosi 100 USD za artikl, a tolerancija je postavljena na 10%, tada možete naplatiti do 110 USD",
This role is allowed to submit transactions that exceed credit limits,Ovoj ulozi je dozvoljeno podnošenje transakcija koje premašuju kreditna ograničenja,
"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","Ako je odabrano &quot;Mjeseci&quot;, fiksni iznos knjižiti će se kao odgođeni prihod ili rashod za svaki mjesec, bez obzira na broj dana u mjesecu. Proportirat će se ako odgođeni prihodi ili rashodi ne budu knjiženi cijeli mjesec",
"If this is unchecked, direct GL entries will be created to book deferred revenue or expense","Ako ovo nije označeno, stvorit će se izravni GL unosi za knjiženje odgođenih prihoda ili troškova",
Show Inclusive Tax in Print,Prikaži uključeni porez u štampi,
Only select this if you have set up the Cash Flow Mapper documents,Odaberite ovo samo ako ste postavili dokumente Mape tokova gotovine,
Payment Channel,Kanal plaćanja,
Is Purchase Order Required for Purchase Invoice & Receipt Creation?,Da li je narudžbenica potrebna za fakturisanje i izradu računa?,
Is Purchase Receipt Required for Purchase Invoice Creation?,Da li je za izradu računa za kupovinu potrebna potvrda o kupovini?,
Maintain Same Rate Throughout the Purchase Cycle,Održavajte istu stopu tokom ciklusa kupovine,
Allow Item To Be Added Multiple Times in a Transaction,Omogućite dodavanje predmeta više puta u transakciji,
Suppliers,Dobavljači,
Send Emails to Suppliers,Pošaljite e-poštu dobavljačima,
Select a Supplier,Odaberite dobavljača,
Cannot mark attendance for future dates.,Nije moguće označiti prisustvo za buduće datume.,
Do you want to update attendance? <br> Present: {0} <br> Absent: {1},Želite li ažurirati prisustvo?<br> Prisutan: {0}<br> Odsutan: {1},
Mpesa Settings,Mpesa Settings,
Initiator Name,Ime inicijatora,
Till Number,Do broja,
Sandbox,Sandbox,
 Online PassKey,Online PassKey,
Security Credential,Sigurnosne vjerodajnice,
Get Account Balance,Nabavite stanje na računu,
Please set the initiator name and the security credential,Molimo postavite ime inicijatora i sigurnosne vjerodajnice,
Inpatient Medication Entry,Stacionarni unos lijekova,
HLC-IME-.YYYY.-,FHP-IME-.GGGG.-,
Item Code (Drug),Šifra artikla (lijek),
Medication Orders,Narudžbe lijekova,
Get Pending Medication Orders,Nabavite lijekove na čekanju,
Inpatient Medication Orders,Stacionarni lijekovi,
Medication Warehouse,Skladište lijekova,
Warehouse from where medication stock should be consumed,Skladište odakle treba potrošiti zalihe lijekova,
Fetching Pending Medication Orders,Preuzimanje naloga za lijekove na čekanju,
Inpatient Medication Entry Detail,Pojedinosti o ulazu u stacionarne lijekove,
Medication Details,Detalji lijekova,
Drug Code,Kod droge,
Drug Name,Ime lijeka,
Against Inpatient Medication Order,Protiv naloga za stacionarno liječenje,
Against Inpatient Medication Order Entry,Protiv ulaza u stacionarne lijekove,
Inpatient Medication Order,Stacionarni nalog za lijekove,
HLC-IMO-.YYYY.-,FHP-IMO-.GGGG.-,
Total Orders,Ukupno narudžbi,
Completed Orders,Završene narudžbe,
Add Medication Orders,Dodajte naredbe za lijekove,
Adding Order Entries,Dodavanje unosa naloga,
{0} medication orders completed,Završeno je {0} narudžbi lijekova,
{0} medication order completed,{0} narudžba lijekova završena,
Inpatient Medication Order Entry,Unos naloga za stacionarne lijekove,
Is Order Completed,Da li je narudžba završena,
Employee Records to Be Created By,Evidencija zaposlenih koju će kreirati,
Employee records are created using the selected field,Evidencija zaposlenih kreira se pomoću izabranog polja,
Don't send employee birthday reminders,Ne šaljite podsjetnike za rođendan zaposlenika,
Restrict Backdated Leave Applications,Ograničite aplikacije za napuštanje sa zadnjim datumom,
Sequence ID,ID sekvence,
Sequence Id,Sekvenca Id,
Allow multiple material consumptions against a Work Order,Omogućite višestruku potrošnju materijala prema radnom nalogu,
Plan time logs outside Workstation working hours,Planirajte evidenciju vremena izvan radnog vremena radne stanice,
Plan operations X days in advance,Planirajte operacije X dana unaprijed,
Time Between Operations (Mins),Vrijeme između operacija (minuta),
Default: 10 mins,Zadano: 10 min,
Overproduction for Sales and Work Order,Prekomerna proizvodnja za prodaju i radni nalog,
"Update BOM cost automatically via scheduler, based on the latest Valuation Rate/Price List Rate/Last Purchase Rate of raw materials","Ažurirajte BOM troškove automatski putem planera, na osnovu najnovije stope procjene / stope cjenika / stope zadnje kupovine sirovina",
Purchase Order already created for all Sales Order items,Narudžbenica je već kreirana za sve stavke narudžbenice,
Select Items,Odaberite stavke,
Against Default Supplier,Protiv zadanog dobavljača,
Auto close Opportunity after the no. of days mentioned above,Automatsko zatvaranje prilika nakon br. dana gore spomenutih,
Is Sales Order Required for Sales Invoice & Delivery Note Creation?,Da li je narudžbenica za kupovinu potrebna za izradu fakture i naloga za isporuku?,
Is Delivery Note Required for Sales Invoice Creation?,Da li je za izradu fakture za prodaju potrebna dostavnica?,
How often should Project and Company be updated based on Sales Transactions?,Koliko često treba ažurirati projekat i kompaniju na osnovu prodajnih transakcija?,
Allow User to Edit Price List Rate in Transactions,Omogućite korisniku da uređuje cijenu cjenika u transakcijama,
Allow Item to Be Added Multiple Times in a Transaction,Dopusti dodavanje predmeta u transakciji više puta,
Allow Multiple Sales Orders Against a Customer's Purchase Order,Omogućite više naloga za prodaju u odnosu na narudžbenice kupca,
Validate Selling Price for Item Against Purchase Rate or Valuation Rate,Potvrdite prodajnu cijenu za stavku naspram stope kupovine ili stope procjene,
Hide Customer's Tax ID from Sales Transactions,Sakrijte poreski broj kupca iz prodajnih transakcija,
"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.","Procenat koji smijete primiti ili isporučiti više u odnosu na naručenu količinu. Na primjer, ako ste naručili 100 jedinica, a Vaš dodatak je 10%, tada možete primiti 110 jedinica.",
Action If Quality Inspection Is Not Submitted,Akcija ako se inspekcija kvaliteta ne podnese,
Auto Insert Price List Rate If Missing,Automatsko umetanje cijene cjenika ako nedostaje,
Automatically Set Serial Nos Based on FIFO,Automatski postavi serijske brojeve na osnovu FIFO-a,
Set Qty in Transactions Based on Serial No Input,Postavi količinu u transakcijama na osnovu serijskog unosa,
Raise Material Request When Stock Reaches Re-order Level,Podignite zahtjev za materijal kada zalihe dosegnu nivo narudžbe,
Notify by Email on Creation of Automatic Material Request,Obavijestite e-poštom o stvaranju automatskog zahtjeva za materijalom,
Allow Material Transfer from Delivery Note to Sales Invoice,Omogućite prijenos materijala iz otpremnice na fakturu prodaje,
Allow Material Transfer from Purchase Receipt to Purchase Invoice,Omogućite prijenos materijala sa računa o kupovini na račun za kupovinu,
Freeze Stocks Older Than (Days),Zamrznite zalihe starije od (dana),
Role Allowed to Edit Frozen Stock,Dopuštena uloga za uređivanje smrznutih zaliha,
The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,Neraspoređeni iznos Unosa za plaćanje {0} veći je od neraspoređenog iznosa Bankovne transakcije,
Payment Received,Primljena uplata,
Attendance cannot be marked outside of Academic Year {0},Prisustvo se ne može označiti van akademske godine {0},
Student is already enrolled via Course Enrollment {0},Student je već upisan putem upisa na predmet {0},
Attendance cannot be marked for future dates.,Prisustvo se ne može označiti za buduće datume.,
Please add programs to enable admission application.,Dodajte programe kako biste omogućili prijavu.,
The following employees are currently still reporting to {0}:,Sljedeći zaposlenici trenutno još uvijek izvještavaju {0}:,
Please make sure the employees above report to another Active employee.,Molimo osigurajte da se gore navedeni zaposlenici prijave drugom aktivnom zaposleniku.,
Cannot Relieve Employee,Ne mogu osloboditi zaposlenika,
Please enter {0},Unesite {0},
Please select another payment method. Mpesa does not support transactions in currency '{0}',Odaberite drugi način plaćanja. Mpesa ne podržava transakcije u valuti &#39;{0}&#39;,
Transaction Error,Greška u transakciji,
Mpesa Express Transaction Error,Mpesa Express Transaction Greška,
"Issue detected with Mpesa configuration, check the error logs for more details","Otkriven je problem s Mpesa konfiguracijom, za više detalja provjerite zapisnike grešaka",
Mpesa Express Error,Mpesa Express greška,
Account Balance Processing Error,Pogreška pri obradi stanja računa,
Please check your configuration and try again,Provjerite svoju konfiguraciju i pokušajte ponovo,
Mpesa Account Balance Processing Error,Greška u obradi stanja računa Mpesa,
Balance Details,Detalji stanja,
Current Balance,Trenutno stanje,
Available Balance,Dostupno stanje,
Reserved Balance,Rezervisano stanje,
Uncleared Balance,Nerazjašnjeni bilans,
Payment related to {0} is not completed,Isplata vezana za {0} nije završena,
Row #{}: Item Code: {} is not available under warehouse {}.,Red # {}: Kod artikla: {} nije dostupan u skladištu {}.,
Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Red # {}: Količina zaliha nije dovoljna za šifru artikla: {} ispod skladišta {}. Dostupna količina {}.,
Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Red # {}: Odaberite serijski broj i seriju stavke: {} ili ga uklonite da biste dovršili transakciju.,
Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,Red # {}: Nije odabran serijski broj za stavku: {}. Odaberite jedan ili ga uklonite da biste dovršili transakciju.,
Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,Red # {}: Nije odabrana serija za stavku: {}. Odaberite grupu ili je uklonite da biste dovršili transakciju.,
Payment amount cannot be less than or equal to 0,Iznos uplate ne može biti manji ili jednak 0,
Please enter the phone number first,Prvo unesite broj telefona,
Row #{}: {} {} does not exist.,Red # {}: {} {} ne postoji.,
Row #{0}: {1} is required to create the Opening {2} Invoices,Redak {0}: {1} potreban je za kreiranje početnih {2} faktura,
You had {} errors while creating opening invoices. Check {} for more details,Imali ste {} grešaka prilikom kreiranja faktura za otvaranje. Pogledajte {} za više detalja,
Error Occured,Dogodila se greška,
Opening Invoice Creation In Progress,Otvaranje fakture u toku,
Creating {} out of {} {},Izrada {} od {} {},
(Serial No: {0}) cannot be consumed as it's reserverd to fullfill Sales Order {1}.,(Serijski broj: {0}) ne može se potrošiti jer je rezerviran za potpuno popunjavanje prodajnog naloga {1}.,
Item {0} {1},Stavka {0} {1},
Last Stock Transaction for item {0} under warehouse {1} was on {2}.,Posljednja transakcija zaliha za artikal {0} u skladištu {1} bila je {2}.,
Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,Transakcije dionicama za stavku {0} u skladištu {1} ne mogu se objaviti prije ovog vremena.,
Posting future stock transactions are not allowed due to Immutable Ledger,Knjiženje budućih transakcija dionicama nije dopušteno zbog Nepromjenjive knjige,
A BOM with name {0} already exists for item {1}.,BOM sa imenom {0} već postoji za stavku {1}.,
{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} Jeste li preimenovali stavku? Molimo kontaktirajte administratora / tehničku podršku,
At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},U retku # {0}: ID sekvence {1} ne može biti manji od ID-a sekvence prethodnog reda {2},
The {0} ({1}) must be equal to {2} ({3}),{0} ({1}) mora biti jednako {2} ({3}),
"{0}, complete the operation {1} before the operation {2}.","{0}, dovršite operaciju {1} prije operacije {2}.",
Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,Ne možemo osigurati isporuku serijskim brojem jer se dodaje stavka {0} sa i bez osiguranja isporuke serijskim br.,
Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,Stavka {0} nema serijski broj. Samo serilizirani predmeti mogu isporučivati na osnovu serijskog broja,
No active BOM found for item {0}. Delivery by Serial No cannot be ensured,Nije pronađena aktivna BOM za stavku {0}. Dostava serijskim brojem ne može se osigurati,
No pending medication orders found for selected criteria,Nije pronađena nijedna narudžba lijekova za odabrane kriterije,
From Date cannot be after the current date.,Od datuma ne može biti nakon trenutnog datuma.,
To Date cannot be after the current date.,Do datuma ne može biti nakon trenutnog datuma.,
From Time cannot be after the current time.,Iz vremena ne može biti nakon trenutnog vremena.,
To Time cannot be after the current time.,To Time ne može biti nakon trenutnog vremena.,
Stock Entry {0} created and ,Unos dionica {0} stvoren i,
Inpatient Medication Orders updated successfully,Nalozi za stacionarne lijekove su uspješno ažurirani,
Row {0}: Cannot create Inpatient Medication Entry against cancelled Inpatient Medication Order {1},Red {0}: Ne može se stvoriti unos za stacionarne lijekove protiv otkazanog naloga za stacionarno liječenje {1},
Row {0}: This Medication Order is already marked as completed,Redak {0}: Ovaj nalog za lijekove već je označen kao ispunjen,
Quantity not available for {0} in warehouse {1},Količina nije dostupna za {0} u skladištu {1},
Please enable Allow Negative Stock in Stock Settings or create Stock Entry to proceed.,Omogućite Dozvoli negativne zalihe u postavkama zaliha ili kreirajte unos zaliha da biste nastavili.,
No Inpatient Record found against patient {0},Nije pronađen nijedan stacionarni zapis protiv pacijenta {0},
An Inpatient Medication Order {0} against Patient Encounter {1} already exists.,Nalog stacionarnih lijekova {0} protiv susreta s pacijentima {1} već postoji.,
Allow In Returns,Omogući povratak,
Hide Unavailable Items,Sakrij nedostupne stavke,
Apply Discount on Discounted Rate,Primijenite popust na sniženu stopu,
Therapy Plan Template,Predložak plana terapije,
Fetching Template Details,Preuzimanje podataka o predlošku,
Linked Item Details,Povezani detalji predmeta,
Therapy Types,Vrste terapije,
Therapy Plan Template Detail,Pojedinosti predloška plana terapije,
Non Conformance,Neusklađenost,
Process Owner,Vlasnik procesa,
Corrective Action,Korektivna akcija,
Preventive Action,Preventivna akcija,
Problem,Problem,
Responsible,Odgovorno,
Completion By,Završetak,
Process Owner Full Name,Puno ime vlasnika procesa,
Right Index,Desni indeks,
Left Index,Lijevi indeks,
Sub Procedure,Potprocedura,
Passed,Prošao,
Print Receipt,Potvrda o ispisu,
Edit Receipt,Uredi potvrdu,
Focus on search input,Usredotočite se na unos pretraživanja,
Focus on Item Group filter,Usredotočite se na filter grupe predmeta,
Checkout Order / Submit Order / New Order,Narudžba za plaćanje / Predaja naloga / Nova narudžba,
Add Order Discount,Dodajte popust za narudžbinu,
Item Code: {0} is not available under warehouse {1}.,Šifra artikla: {0} nije dostupno u skladištu {1}.,
Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Serijski brojevi nisu dostupni za artikl {0} u skladištu {1}. Pokušajte promijeniti skladište.,
Fetched only {0} available serial numbers.,Preuzeto je samo {0} dostupnih serijskih brojeva.,
Switch Between Payment Modes,Prebacivanje između načina plaćanja,
Enter {0} amount.,Unesite iznos od {0}.,
You don't have enough points to redeem.,Nemate dovoljno bodova za iskorištavanje.,
You can redeem upto {0}.,Možete iskoristiti do {0}.,
Enter amount to be redeemed.,Unesite iznos koji treba iskoristiti.,
You cannot redeem more than {0}.,Ne možete iskoristiti više od {0}.,
Open Form View,Otvorite prikaz obrasca,
POS invoice {0} created succesfully,POS račun {0} je uspješno kreiran,
Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,Količina zaliha nije dovoljna za šifru artikla: {0} ispod skladišta {1}. Dostupna količina {2}.,
Serial No: {0} has already been transacted into another POS Invoice.,Serijski broj: {0} je već prebačen na drugu POS fakturu.,
Balance Serial No,Serijski br. Stanja,
Warehouse: {0} does not belong to {1},Skladište: {0} ne pripada {1},
Please select batches for batched item {0},Odaberite serije za serijsku stavku {0},
Please select quantity on row {0},Odaberite količinu u retku {0},
Please enter serial numbers for serialized item {0},Unesite serijske brojeve za serijsku stavku {0},
Batch {0} already selected.,Paket {0} je već odabran.,
Please select a warehouse to get available quantities,Odaberite skladište da biste dobili dostupne količine,
"For transfer from source, selected quantity cannot be greater than available quantity","Za prijenos iz izvora, odabrana količina ne može biti veća od dostupne količine",
Cannot find Item with this Barcode,Ne mogu pronaći predmet sa ovim crtičnim kodom,
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} je obavezno. Možda zapis mjenjačnice nije kreiran za {1} do {2},
{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} je poslao sredstva povezana s tim. Morate otkazati imovinu da biste stvorili povrat kupovine.,
Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,Ovaj dokument nije moguće otkazati jer je povezan sa dostavljenim materijalom {0}. Otkažite ga da biste nastavili.,
Row #{}: Serial No. {} has already been transacted into another POS Invoice. Please select valid serial no.,Red # {}: Serijski broj {} je već prebačen na drugu POS fakturu. Odaberite važeći serijski broj.,
Row #{}: Serial Nos. {} has already been transacted into another POS Invoice. Please select valid serial no.,Red # {}: Serijski brojevi. {} Je već prebačen na drugu POS fakturu. Odaberite važeći serijski broj.,
Item Unavailable,Predmet nije dostupan,
Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},Red # {}: Serijski broj {} se ne može vratiti jer nije izvršen u originalnoj fakturi {},
Please set default Cash or Bank account in Mode of Payment {},Postavite zadani gotovinski ili bankovni račun u načinu plaćanja {},
Please set default Cash or Bank account in Mode of Payments {},Postavite zadani gotovinski ili bankovni račun u načinu plaćanja {},
Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,Molimo provjerite je li račun {} račun bilance stanja. Možete promijeniti roditeljski račun u račun bilansa stanja ili odabrati drugi račun.,
Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,Molimo provjerite je li račun {} račun koji se plaća. Promijenite vrstu računa u Plativo ili odaberite drugi račun.,
Row {}: Expense Head changed to {} ,Red {}: Glava rashoda promijenjena u {},
because account {} is not linked to warehouse {} ,jer račun {} nije povezan sa skladištem {},
or it is not the default inventory account,ili to nije zadani račun zaliha,
Expense Head Changed,Promijenjena glava rashoda,
because expense is booked against this account in Purchase Receipt {},jer je račun evidentiran na ovom računu u potvrdi o kupovini {},
as no Purchase Receipt is created against Item {}. ,jer se prema stavci {} ne kreira potvrda o kupovini.,
This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,To se radi radi obračunavanja slučajeva kada se potvrda o kupovini kreira nakon fakture za kupovinu,
Purchase Order Required for item {},Narudžbenica potrebna za stavku {},
To submit the invoice without purchase order please set {} ,"Da biste predali račun bez narudžbenice, postavite {}",
as {} in {},kao u {},
Mandatory Purchase Order,Obavezna narudžbenica,
Purchase Receipt Required for item {},Potvrda o kupovini za stavku {},
To submit the invoice without purchase receipt please set {} ,"Da biste predali račun bez potvrde o kupovini, postavite {}",
Mandatory Purchase Receipt,Obavezna potvrda o kupovini,
POS Profile {} does not belongs to company {},POS profil {} ne pripada kompaniji {},
User {} is disabled. Please select valid user/cashier,Korisnik {} je onemogućen. Odaberite valjanog korisnika / blagajnika,
Row #{}: Original Invoice {} of return invoice {} is {}. ,Redak {{}: Originalna faktura {} fakture za povrat {} je {}.,
Original invoice should be consolidated before or along with the return invoice.,Originalnu fakturu treba konsolidirati prije ili zajedno s povratnom fakturom.,
You can add original invoice {} manually to proceed.,Možete nastaviti originalnu fakturu {} ručno da biste nastavili.,
Please ensure {} account is a Balance Sheet account. ,Molimo provjerite je li račun {} račun bilance stanja.,
You can change the parent account to a Balance Sheet account or select a different account.,Možete promijeniti roditeljski račun u račun bilansa stanja ili odabrati drugi račun.,
Please ensure {} account is a Receivable account. ,Molimo provjerite je li račun} račun potraživanja.,
Change the account type to Receivable or select a different account.,Promijenite vrstu računa u Potraživanje ili odaberite drugi račun.,
{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},{} se ne može otkazati jer su iskorišteni bodovi za lojalnost iskorišteni. Prvo otkažite {} Ne {},
already exists,već postoji,
POS Closing Entry {} against {} between selected period,Zatvaranje unosa POS-a {} protiv {} između izabranog perioda,
POS Invoice is {},POS račun je {},
POS Profile doesn't matches {},POS profil se ne podudara sa {},
POS Invoice is not {},POS račun nije {},
POS Invoice isn't created by user {},POS račun ne kreira korisnik {},
Row #{}: {},Red # {}: {},
Invalid POS Invoices,Nevažeći POS računi,
Please add the account to root level Company - {},Molimo dodajte račun korijenskom nivou kompanije - {},
"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA","Tokom kreiranja računa za kompaniju Child Child {0}, nadređeni račun {1} nije pronađen. Molimo kreirajte roditeljski račun u odgovarajućem COA",
Account Not Found,Račun nije pronađen,
"While creating account for Child Company {0}, parent account {1} found as a ledger account.","Prilikom kreiranja računa za Child Company {0}, roditeljski račun {1} je pronađen kao račun glavne knjige.",
Please convert the parent account in corresponding child company to a group account.,Molimo konvertujte roditeljski račun u odgovarajućem podređenom preduzeću u grupni račun.,
Invalid Parent Account,Nevažeći račun roditelja,
"Renaming it is only allowed via parent company {0}, to avoid mismatch.","Preimenovanje je dozvoljeno samo preko matične kompanije {0}, kako bi se izbjegla neusklađenost.",
"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.","Ako {0} {1} količinu predmeta {2}, shema {3} primijenit će se na stavku.",
"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.","Ako {0} {1} vrijedite stavku {2}, shema {3} primijenit će se na stavku.",
"As the field {0} is enabled, the field {1} is mandatory.","Kako je polje {0} omogućeno, polje {1} je obavezno.",
"As the field {0} is enabled, the value of the field {1} should be more than 1.","Kako je polje {0} omogućeno, vrijednost polja {1} trebala bi biti veća od 1.",
Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},Nije moguće isporučiti serijski broj {0} stavke {1} jer je rezervisan za puni popunjeni prodajni nalog {2},
"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.","Prodajni nalog {0} ima rezervaciju za artikal {1}, rezervisani {1} možete dostaviti samo protiv {0}.",
{0} Serial No {1} cannot be delivered,{0} Serijski broj {1} nije moguće isporučiti,
Row {0}: Subcontracted Item is mandatory for the raw material {1},Red {0}: Predmet podugovaranja je obavezan za sirovinu {1},
"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.","Budući da postoji dovoljno sirovina, zahtjev za materijal nije potreban za Skladište {0}.",
" If you still want to proceed, please enable {0}.","Ako i dalje želite nastaviti, omogućite {0}.",
The item referenced by {0} - {1} is already invoiced,Stavka na koju se poziva {0} - {1} već je fakturirana,
Therapy Session overlaps with {0},Sjednica terapije preklapa se sa {0},
Therapy Sessions Overlapping,Preklapanje terapijskih sesija,
Therapy Plans,Planovi terapije,
"Item Code, warehouse, quantity are required on row {0}","Šifra artikla, skladište, količina su obavezni na retku {0}",
Get Items from Material Requests against this Supplier,Nabavite predmete od materijalnih zahtjeva protiv ovog dobavljača,
Enable European Access,Omogućiti evropski pristup,
Creating Purchase Order ...,Kreiranje narudžbenice ...,
"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.","Odaberite dobavljača od zadanih dobavljača dolje navedenih stavki. Nakon odabira, narudžbenica će se izvršiti samo za proizvode koji pripadaju odabranom dobavljaču.",
Row #{}: You must select {} serial numbers for item {}.,Red # {}: Morate odabrati {} serijske brojeve za stavku {}.,
