# # Custom and domain constraint messages. # address.owner.not.found=An owner (Person, Site or Supplier) must be supplied to create an address. contact.owner.not.found=An owner (Person, Site or Supplier) must be supplied to create contact details. asset.tree.import.success=Asset tree imported. asset.tree.import.failure=Could not create asset tree from supplied file, failed on line {0}, see {1}. inventory.import.success=Inventory imported. inventory.import.failure=Could not create inventory from supplied file, failed on line {0}, see {1}. inventoryItemPictures.import.success=Inventory item pictures imported, see {0}. inventoryItemPictures.import.failure.no.directory=Import directory on server not found. inventoryItemPictures.import.failure.to.unzip=Failed to unzip supplied file. inventoryItemPictures.import=Picture Import inventoryItemPictures.import.help=A zip file of pictures (max 100MB) or singles pictures may be imported. Pictures \ must have the same file names as existing inventory items. inventoryItemPurchase.import.success=Inventory item purchases imported. inventoryItemPurchase.import.failure=Could not create inventory item purchases from supplied file, failed on line {0}, see {1}. person.import.success=Person list imported. person.import.failure=Could not create persons from supplied file, failed on line {0}, see {1}. asset.copy.subItem.create.failure=Could not complete operation, as sub item failed to save. asset.copy.subItem.too.many.failure=Could not complete operation, as there appears to be too many sub items. asset.copy.method.required=Please select a copy method for sub items. asset.copy.method=Copy Method asset.copy.method.help=Link creates a new asset and links it to EXISTING sub items. \ While copy creates a new asset and new sub items by appending '(id:#)' to create unique sub item names. asset.copy.asset.required=Please select an asset to copy. maintenanceActions.still.associated=Could not complete operation as maintenance actions are still associated \ with this item. maintenanceActions.still.associated.subItem=Could not complete operation as maintenance actions are still associated \ with a sub item. inventoryStores.still.associated=Could not complete operation as inventory stores are still associated with this item. site.section.delete.failure=Could not complete operation as sections failed to delete. section.asset.delete.failure=Could not complete operation as assets failed to delete. asset.subItems.delete.failure=Could not complete operation as orphan sub items failed to delete. assetSubItem.asset.not.found=Could not complete operation as an asset was supplied but not found. assetSubItem.assets.associated=Could not complete operation as assets are still associated with this sub item. sub.task.create.confirm=Immediately create and save a new sub task? person.pass.minSize.notmet=Password is less than the minimum size of [{3}] person.pass.blank=Password cannot be blank person.pass.doesNotMatch=Passwords must match costCode.name.not.unique.for.purchasing.group=CostCode name must be unique for purchasingGroup. # # Help Balloon and property definitions. # # Report help balloon messages. report.stock.take.overview=Stock Take (Overview) report.stock.take.overview.help=Use this report to manage inventory stock take. Use in conjunction with the Stock Take (By Location) report. report.stock.take.by.location=Stock Take (Location) report.stock.take.by.location.help=Enter a comma separated list of inventory locations. \ Use the Stock Take (Overview) report to get the list of locations. A % symbol may be used as a wild card, e.g: X1, X2, Y%, Z%7 # Person properties. person.personGroups=Person Groups person.personGroups.help=Groups may be assigned to tasks and \ may also provide a record of persons qualified or trained in a specific area. \ Groups provide no application authorisations. person.purchasingGroups=Purchasing Groups person.purchasingGroups.help=Purchasing groups determine the available cost codes that a person may purchase against. person.loginName=Login Name person.loginName.help=This is the id or name that the person will use to login to the application. person.firstName=First Name person.firstName.help=The person's real first name. person.lastName=Last Name person.lastName.help=The person's real last name. person.password=Password person.password.help=The password that the person will use to login to the application (should be changed by them later). person.isActive=Active person.isActive.help=Disable this to prevent a person logging in to the application. person.authorities=Authorities person.authorities.help=Give this person authority to do things in the application. \ The user must logout for changes to take effect. # InventoryItemPurchase properties. inventoryItemPurchase.purchaseOrderNumber=Purchase Order # inventoryItemPurchase.purchaseOrderNumber.help=This number must be exact in case and spacing. \ All purchase received and invoice approval requires this number to track correctly. \ The number may only appear once for each inventory item. \ To enter multiple line items for a purchase order # 'M123' use 'M123.1' and 'M123.2' for example. inventoryItemPurchase.order.placed.date=Date inventoryItemPurchase.order.placed.date.help=The date that the order was placed. \ May be adjusted at the end of financial years. Also see the 'date created' and 'last updated' properties. inventoryItemPurchase.cost.code=Cost Code inventoryItemPurchase.cost.code.help=Cost codes assign cost to the correct asset and accouting ledger number/account. \ Ideally cost codes should be asset based and reflect the asset tree. inventoryItemPurchase.task.budget.status=Budget Status inventoryItemPurchase.task.budget.status.help=Was this purchase planned for in the budget or is it an unplanned spend. inventoryItemPurchase.supplier=Supplier inventoryItemPurchase.supplier.help=The supplier to make the purchase out to. inventoryItemPurchase.quantity=Quantity inventoryItemPurchase.quantity.help=The number of inventory item units purchased. inventoryItemPurchase.receive.quantity=Receive Quantity inventoryItemPurchase.receive.quantity.help=The number of inventory item units received. inventoryItemPurchase.approve.quantity=Approve Quantity inventoryItemPurchase.approve.quantity.help=The number of inventory item units to approve payment for. inventoryItemPurchase.order.value=Order Value inventoryItemPurchase.order.value.help=The total value of this line item. inventoryItemPurchase.receive.value=Receive Value inventoryItemPurchase.receive.value.help=The value of items received. inventoryItemPurchase.approve.value=Approve Value inventoryItemPurchase.approve.value.help=The value to approve payment for. inventoryItemPurchase.invoice.number=Invoice Number inventoryItemPurchase.invoice.number.help=The invoice number that this line item approves payment for. entry.duration=Duration entry.duration.help=The time (hh:mm) booked against this entry for date done. entry.duration.fault=Down Time. entry.duration.fault.help=The production down time (hh:mm) directly attributable to this fault. entry.date.done=Date Done entry.date.done.help=The date on which the event actually occurred. entry.comment.fault=Fault entry.comment.fault.help=Techinical description of the fault and what is happening, NOT what needs doing! entry.comment.cause=Cause entry.comment.cause.help=The root cause of the fault. Professional opinion on any faults. \ Include condition and contributing factors. entry.comment.work.done=Work Done entry.comment.work.done.help=Describe the work that was done. entry.productionReference.fault=Production Reference entry.productionReference.fault.help=The production during which the fault occurred. assignedGroup.estimatedDuration=Estimated Duration assignedGroup.estimatedDuration.help=The estimated amount of time (hh:mm) that you would \ like to assign this group to the task. assignedPerson.estimatedDuration=Estimated Duration assignedPerson.estimatedDuration.help=The estimated amount of time (hh:mm) that you would \ like to assign this person to the task. task.delete.failure.production=Tasks may not be deleted in production mode, \ set the trash flag instead. task.trash.confirm=Trash, are you sure? \ If authorised, recurrence will be disabled and Sub Task links will be forever removed! task.clear.attention.flag.on.completion.confirm=Clear Flag and Complete, are you sure? task.notFound=Could not complete operation, task not found. task.operationNotPermittedOnCompleteTask=This operation is not permitted on a complete task. task.operationNotPermittedOnTaskInTrash=This operation is not permitted on a task that is in the trash. task.operationNotPermittedOnRecurringTaskWithoutAuth=This operation is not permitted \ on a recurring task without authorisation. task.operationNotPermittedOnTaskHavingSubTasksWithoutAuth=This operation is not permitted \ on a task that has sub tasks without authorisation. task.operationNotPermittedOnTaskLinkedToProcedureWithoutAuth=This operation is not permitted \ on a task that is linked to a procedure without authorisation. task.operationNotPermittedOnParentPmTask=This operation is not permitted \ on a Parent PM task. task.failedToSave=Could not complete operation, task failed to save. task.modifications.failedToSave=Could not complete operation, as task modification record failed to save. task.assignedGroups.failedToSave=Could not complete operation, as assignedGroup record failed to save. task.assignedPersons.failedToSave=Could not complete operation, as assignedPerson record failed to save. tast.taskRecurringSchedule.alreadyExists=This task already has a recurring schedule. tast.operationNotPermittedToChangeAssetWithMaintenanceActions=Changing the primaryAsset \ on a task with maintenanceActions is not permitted, remove the maintenanceActions first. task.targetCompletionDate.before.targetStartDate=The target completion date must be equal to or greater than \ the target start date. entry.create.no.params=Please select a task, then add an entry. taskRecurringSchedule.notFound=Could not complete operation, recurring schedule not found. personGroup.not.found=Person Group not found, it may have been deleted. person.not.found=Person record not found, it may have been deleted. # Task Properties. task.assignedGroups=Assigned Groups task.assignedGroups.help=The person groups assigned to work on this task during planning along with estimated time. task.assignedPersons=Assigned Persons task.assignedPersons.help=The persons assigned to work on this task during planning along with estimated time. task.description=Task Description task.description.help=Short basic description of the task. task.description.immediateCallout=Immediate Callout Description. task.description.immediateCallout.help=Short description of the callout from an operations perspective. task.comment=Task Comment task.comment.help=Long text for additional info, only shown in detail views. task.targetStartDate=Target Start Date task.targetStartDate.help=The date we would like the task to start, set during scheduling. task.targetStartDate.immediateCallout=Callout Date task.targetStartDate.immediateCallout.help=The date the callout occured. task.targetCompletionDate=Target Completion Date task.targetCompletionDate.help=The date we would like the task to be completed by, set during scheduling. task.leadPerson=Lead Person task.leadPerson.help=The primay contact person. task.safetyRequirement=Safety task.safetyRequirement.help=Completion of this task is required to correct an immediate safety concern. \ This task must be completed and is not allowed to be missed. task.regulatoryRequirement=Regulatory task.regulatoryRequirement.help=Completion of this task is a regulatory requirement. \ This task must be completed and is not allowed to be missed. task.mandatoryRequirement=Mandatory task.mandatoryRequirement.help=Completion of this task is mandatory, due to company policy or operational requirement. \ This task must be completed and is not allowed to be missed. task.positiveFault=Positive Fault task.positiveFault.help=Set false if unsure. Used to calculate preventative efficiency or P.E. # Task Actions task.status.resolved=Resolved. task.status.resolved.help=Indicate that root cause is known and has been completely resolved. task.status.unresolved=Unresolved. task.status.unresolved.help=Indicate that this task requires further attention, root cause is either unknown or unresolved. taskRecurringSchedule.nextTargetStartDate.mayNotBePast=Please select a start date that is not in the past. taskRecurringSchedule.nextTargetStartDate=Next Target Start Date taskRecurringSchedule.nextTargetStartDate.help=The target start date for the next auto generated sub task. taskRecurringSchedule.recurEvery=Recur Every taskRecurringSchedule.recurEvery.help=How often this task should recur. Determines the period between sub task target start dates. taskRecurringSchedule.taskDuration=Task Duration taskRecurringSchedule.taskDuration.help=How long to allow for the task. Determines the target completion date of the sub tasks. taskRecurringSchedule.generateAhead=Generate Ahead taskRecurringSchedule.generateAhead.help=How far ahead of the next target start date to generate sub tasks. \ This allows work packs to be built and work load to be seen and planned. \ Only generate ahead as far as short term planning is done, since all generated sub task \ values will be set and therefore time consuming to change. taskRecurringSchedule.maxSubTasks=Max Sub Tasks taskRecurringSchedule.maxSubTasks.help=Maximum number of sub tasks to generate. Set to 0 \ for no limit. taskRecurringSchedule.useTargetCompletionDate=Target Completion taskRecurringSchedule.useTargetCompletionDate.help=On to use the parent task's target completion date. \ Off to continue generation past the parent task's target completion date. taskRecurringSchedule.enabled=Enabled taskRecurringSchedule.enabled.help=On to enable automatic sub task generation. \ Off to stop automatic sub task generation.

\ The system will turn this off if there are no further sub tasks to be generated. task.primaryAsset=Primary Asset task.primaryAsset.help=This is the asset that costs will be assigned to. task.associatedAssets=Associated Assets task.associatedAssets.help=These assets are to be associated with this task, but costs will not be assigned. # InventoryItem Properties. inventory.item.name=Name inventory.item.name.help=The inventory item's name as known on site. \ Also called the part number but may contain letters and numbers. inventory.item.description=Description inventory.item.description.help=The inventory item description as it would appear on a reorder. inventory.item.comment=Comment inventory.item.comment.help=Additional on site comments. Which may include additional ordering information, \ search key words and other useful information. inventory.item.estimated.unit.price.amount=Unit Price inventory.item.estimated.unit.price.amount.help=Estimated reorder price of a single unit. inventory.item.unit.of.measure=Unit Of Measure inventory.item.unit.of.measure.help=The units that this item will be measured in. Set once during creation \ and cannot be changed as changing would invalidate all movement, another item with the correct units must be created. inventory.item.suppliers.part.number=Part Number inventory.item.suppliers.part.number.help=The suppliers part number as it would appear on a reorder. inventory.item.units.in.stock=In Stock inventory.item.units.in.stock.help=Current units in stock. inventory.item.reorder.point=Reorder Point inventory.item.reorder.point.help=Point at which a reorder will be flagged. inventory.item.reorder.quantity=Reorder Quantity inventory.item.reorder.quantity.help=Typical or recommended quantity to reorder. \ Infers the max holding quantity (Reorder Point + Reorder Quantity). \ Often determined by a price break or minimum order quantity. inventory.item.is.active=Active inventory.item.is.active.help=Disable to remove from search results. inventory.item.is.obsolete=Obsolete inventory.item.is.obsolete.help=Enabled indicates that item considered obsolete by the supplier. inventory.item.enable.reorder.listing=Reorder Listing inventory.item.enable.reorder.listing.help=Enabled to show item on reorder lists. inventory.item.inventory.location=Location inventory.item.inventory.location.help=The location or bin where this item can be found. inventory.item.inventory.group=Group inventory.item.inventory.group.help=An easy way to group or place items in various piles to assit with management. inventory.item.inventory.type=Type inventory.item.inventory.type.help=The type of inventory that this item falls into. inventory.item.preferred.supplier=Preferred Supplier inventory.item.preferred.supplier.help=The preferred supplier to purchase this item from. \ Often determined by cost, contract or availability. inventory.item.alternate.suppliers=Alternate Suppliers inventory.item.alternate.suppliers.help=List of alternate suppliers that this item may be purchased from. \ For example when the preferred supplier has no stock. inventory.item.spare.for=Spare For inventory.item.spare.for.help=List of assets that this item is held as a spare for. # InventoryItem Messages. inventory.item.is.obsolete.message=This item has been flagged as obsolete. inventory.item.not.active.message=This item has been flagged as not active. inventory.item.reorder.not.allowed=Reorder not allowed. inventory.item.reorder.listing.disabled=This item has reorder listing disabled and will not appear on reorder lists. inventory.item.already.has.picture=Inventory item already has a picture, please delete the old picture first. inventory.item.picture.file.unrecognised=Image file [{0}]: type not recognised. inventory.item.picture.source.not.supported=Image source type not supported. inventoryMovement.quantity.insufficientItemsInStock=Could not complete operation, insufficient items in stock. inventoryMovement.inventoryItem.notFound=Inventory Item not found. inventoryMovement.still.associated=Could not complete operation as inventory movements are still associated with this item. inventoryItemPurchase.purchaseOrderNumber.not.unique.for.inventory.item.order=Purchase Order Number must be unique for this inventory item order. inventoryItemPurchase.invoiceNumber.required=An invoice number must be supplied to approve payment. inventoryItemPurchase.delete.failure.received.exists=Could not delete, items have been received. inventoryItemPurchase.delete.failure.payment.approved=Could not delete, payment has been approved. inventoryItemPurchase.operation.not.permitted.on.inactive.or.obsolete.item=This operation is not permitted on an inactive or obsolete inventory item. inventoryItemPurchase.costCodes.not.found=No cost codes found, a person needs to be assigned to a purchasing group that has cost codes. assignedGroup.task.not.found=Please select a task and then ''Add Assigned Group''. assignedPerson.task.not.found=Please select a task and then ''Add Assigned Person''. # # Default messages. # default.list.failure=Could not generate list for class {0}. default.not.found={0} {1} not found, it may have been deleted. default.delete.success={0} {1} deleted. default.delete.failure={0} {1} could not be deleted. default.update.success={0} {1} updated. default.update.failure={0} {1} could not be updated. default.create.success={0} {1} created. default.create.failure={0} could not be created. default.create.revision.failure=Could not create revision. default.optimistic.locking.failure=Another user has updated this item while you were editing, please check the updated values. default.file.over.max.size=Supplied file is greater than max size of {0} {1}. default.file.not.supplied=No file supplied. default.file.no.header=The supplied file does not have the correct header lines, please see the template file. default.not.development.environment.failure=Could not complete operation, dev environment not detected. default.doesnt.match.message=Property [{0}] of class [{1}] with value [{2}] does not match the required pattern [{3}] default.invalid.url.message=Property [{0}] of class [{1}] with value [{2}] is not a valid URL default.invalid.creditCard.message=Property [{0}] of class [{1}] with value [{2}] is not a valid credit card number default.invalid.email.message=Property [{0}] of class [{1}] with value [{2}] is not a valid e-mail address default.invalid.range.message=Property [{0}] of class [{1}] with value [{2}] does not fall within the valid range from [{3}] to [{4}] default.invalid.size.message=Property [{0}] of class [{1}] with value [{2}] does not fall within the valid size range from [{3}] to [{4}] default.invalid.max.message=Property [{0}] of class [{1}] with value [{2}] exceeds maximum value [{3}] default.invalid.min.message=Property [{0}] of class [{1}] with value [{2}] is less than minimum value [{3}] default.invalid.max.size.message=Property [{0}] of class [{1}] with value [{2}] exceeds the maximum size of [{3}] default.invalid.min.size.message=Property [{0}] of class [{1}] with value [{2}] is less than the minimum size of [{3}] default.invalid.validator.message=Property [{0}] of class [{1}] with value [{2}] does not pass custom validation default.not.inlist.message=Property [{0}] of class [{1}] with value [{2}] is not contained within the list [{3}] default.blank.message=Property [{0}] of class [{1}] cannot be blank default.not.equal.message=Property [{0}] of class [{1}] with value [{2}] cannot equal [{3}] default.null.message=Property [{0}] of class [{1}] cannot be null default.not.unique.message=Property [{0}] of class [{1}] with value [{2}] must be unique default.paginate.prev=Previous default.paginate.prev.abbrev=Prev default.paginate.next=Next default.close.text=Close default.options.text=Options default.none.text=None default.all.text=All default.please.select.text=--Please-Select-- default.none.select.text=--None-- default.all.select.text=--All-- # # Rich UI plugin - Calendar # default.time=Time default.week=Week default.monday=Mon default.tuesday=Tues default.wednesday=Wed default.thursday=Thu default.friday=Fri default.saturday=Sat default.sunday=Sun # # Data binding errors. Use "typeMismatch.$className.$propertyName to customize (eg typeMismatch.Book.author) # typeMismatch.java.net.URL=Property {0} must be a valid URL typeMismatch.java.net.URI=Property {0} must be a valid URI typeMismatch.java.util.Date=Property {0} must be a valid Date typeMismatch.java.lang.Double=Property {0} must be a valid number typeMismatch.java.lang.Integer=Property {0} must be a valid number typeMismatch.java.lang.Long=Property {0} must be a valid number typeMismatch.java.lang.Short=Property {0} must be a valid number typeMismatch.java.math.BigDecimal=Property {0} must be a valid number typeMismatch.java.math.BigInteger=Property {0} must be a valid number # # Navigation plugin, see conf/Config.groovy for menu's. # Subitems are not currently resolving with this plugin. # navigation.nav.home=Home navigation.nav.home.start=Start navigation.nav.home.appAdmin=Admin navigation.nav.home.manager=Manager navigation.nav.home.changeSessionTimeout=Timeout navigation.nav.home.changePassword=Password navigation.nav.tasks=Tasks navigation.nav.tasks.create=Create navigation.nav.tasks.search=Search navigation.nav.tasks.show=Show navigation.nav.inventory=Inventory navigation.nav.assets=Assets # # FilterPane plugin, properties. # fp.property.text.associatedAssets.name=Associated Asset fp.property.text.primaryAsset.name=Primary Asset fp.property.text.trash=Trash fp.property.text.scheduled=Scheduled fp.property.text.approved=Approved fp.property.text.isObsolete=Obsolete fp.property.text.taskGroup.name=Group fp.property.text.taskPriority.name=Priority fp.property.text.taskStatus.name=Status fp.property.text.description=Description fp.property.text.comment=Comment fp.property.text.leadPerson.lastName=Lead Person (Last Name) fp.property.text.leadPerson.firstName=Lead Person (First Name) fp.property.text.taskType.name=Type fp.property.text.inventoryLocation.name=Location fp.property.text.spareFor.name=Spare For fp.property.text.supplier.name=Supplier fp.property.text.estimatedUnitPriceAmount=Estimated Unit Price fp.property.text.inventoryItemPurchaseType.name=Type # # TaskSearch Service. # task.search.include.completed=Incl. Completed task.search.include.completed.help=Include completed tasks in the results. task.search.text.all.tasks=All Tasks task.search.text.all.tasks.help=All tasks that are not in the trash. Tasks in the trash must be explicitly requested in the advanced search. task.search.text.all.tasks.message=All tasks for {0}. task.search.text.all.tasks.none.found=No tasks found for {0}. task.search.text.all.tasks.between.message=All tasks between {0} and {1}. task.search.text.all.tasks.between.none.found=No tasks found between {0} and {1}. task.search.text.persons.tasks=Person's Tasks task.search.text.persons.tasks.help=Approved tasks that a person is assigned to. task.search.text.persons.tasks.message=Tasks for {0} on {1}. task.search.text.persons.tasks.none.found=No tasks found for {0} on {1}. task.search.text.persons.tasks.between.message=Tasks for {0} between {1} and {2}. task.search.text.persons.tasks.between.none.found=No tasks found for {0} between {1} and {2}. task.search.text.my.todays=Today task.search.text.my.todays.description=My tasks and approved tasks that I am assigned to. task.search.text.persons.immediate.callouts=Person's Callouts task.search.text.persons.immediate.callouts.help=Immediate callouts by person (lead person or created by). task.search.text.persons.immediate.callouts.message=Immediate callouts for {0} on {1}. task.search.text.persons.immediate.callouts.none.found=No immediate callouts found for {0} on {1}. task.search.text.persons.immediate.callouts.between.message=Immediate callouts for {0} between {1} and {2}. task.search.text.persons.immediate.callouts.between.none.found=No immediate callouts found for {0} between {1} and {2}. task.search.calendar.text.too.many.results=Too many results, only {0} are shown. task.search.text.work.done=Work Done task.search.text.work.done.description=Work done by person and date. task.search.text.work.done.message=Work done by {0} on {1}. task.search.text.work.done.none.found=No entries found for {0} on {1}. task.search.text.work.load=Work Load task.search.text.work.load.description=Work load by group and date. task.search.text.work.load.message=Work load between {0} and {1}. task.search.text.work.load.none.found=No tasks found between {0} and {1}. task.search.text.work.load.too.many.results=Too many tasks found to perform calculatation, {0} / {1} shown. # # InventoryItemSearch # inventoryItem.search.searchText=Search inventoryItem.search.searchText.help=By default all words are matched and results are sorted by relevance. \ A * symbol may be used as a wild card, e.g: '2305*' would find 2305RS and 2305-RS. A + symbol may be used to require a word \ e.g: 'sensor +print' would require results to have 'print' in the searched categories. inventoryItem.search.text.found=Results for: {0} inventoryItem.search.text.none.found=No results for: {0} inventoryItem.search.text.below.reorder=Below Reorder inventoryItem.search.text.below.reorder.description=Inventory items at or below reorder point. inventoryItem.search.text.below.reorder.all=Below Reorder (all) inventoryItem.search.text.below.reorder.all.description=Inventory items at or below reorder point, including reorder listing disabled. inventoryItem.search.text.below.reorder.none.found=No inventory items found at or below reorder point. inventoryItem.search.text.all.description=All inventory items. inventoryItem.search.text.all.none.found=No inventory items found. inventoryItem.search.text.recently.used=Recently Used inventoryItem.search.text.recently.used.description=Items used in the last {0} days. inventoryItem.search.text.recently.used.none.found=No items used in the last {0} days. # # Report error messages. # report.error.too.many.results=Error: over {0} results, please run report again. report.error.no.locations.found=Error: no locations found, please run report again. report.error.too.many.locations=Error: over {0} locations, please run report again. report.error.no.inventory.items.found=Error: no inventory items found, please run report again. report.error.too.many.inventory.items=Error: over {0} inventory items, please run report again. report.error.multiple.currency.found=Error: multiple currency found. # # AppCore messages. # appCore.rebuild.text.search.index=The text search index is being rebuilt in the background, see log file for details.