diff --git a/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po index e2d46d108b..e9fd3ecda6 100644 --- a/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:41\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Arabic\n" "Language: ar_SA\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "نقطة نهاية API غير موجودة" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "المستخدم ليس لديه الصلاحية لعرض هذا النموذج" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "تعذّر تحويل {original} إلى {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "الكمية المقدمة غير صحيحة" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "القيمة '{name}' لا تظهر في تنسيق النمط" msgid "Provided value does not match required pattern: " msgstr "القيمة المقدمة لا تتطابق مع النمط المطلوب: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "سلسلة الرقم التسلسلي فارغة" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "تكرار التسلسل" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "نطاق المجموعة {group} يتجاوز الكَمّيَّة المسموح بها ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "لم يتم العثور على أرقام متسلسلة" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "عدد الأرقام المسلسلة الفريدة ({len(serials)}) يجب أن يتطابق مع الكمية ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "إزالة علامات HTML من هذه القيمة" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po index d815439300..1a0b89eeb2 100644 --- a/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:41\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Bulgarian\n" "Language: bg_BG\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "Не е намерена крайна точка на API" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Потребителя няма нужното разрешение, за да вижда този модел" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Преобразуването на {original} в {unit} не беше успешно" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Въведена е недопустима стойност" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Значението '{name}' не отговаря на шаблона" msgid "Provided value does not match required pattern: " msgstr "Въведеното значение не отговаря на задължителния шаблон: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Липсва сериен номер" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Повтарящ се сериен номер" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Не са открити серийни номера" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Премахнете HTML маркерите от тази стойност" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Част" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Потребител" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Изпратено" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Място в склада" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Места в склада" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po index cb3bb8cbc6..73087b656f 100644 --- a/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:41\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Czech\n" "Language: cs_CZ\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "Před tím, než budete dělat cokoli jiného, musíte zapnout dvoufaktorové ověřování." -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API endpoint nebyl nalezen" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "Seznam položek nebo filtrů musí být k dispozici pro hromadnou operaci" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "Položky musí být uvedeny jako seznam" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "Zadán neplatný seznam položek" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "Filtry musí být uvedeny jako slovník" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Poskytnuty neplatné filtry" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "Zadaným kritériím neodpovídají žádné položky" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Uživatel nemá právo zobrazit tento model" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Nelze převést {original} na {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Vyplněno neplatné množství" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Neplaté desetinné číslo" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Hodnota '{name}' neodpovídá formátu vzoru" msgid "Provided value does not match required pattern: " msgstr "Poskytnutá hodnota neodpovídá požadovanému vzoru: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "Nelze serializovat více než 1000 položek najednou" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Nevyplněné výrobní číslo" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Duplicitní výrobní číslo" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Neplatná skupina: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Rozsah skupiny {group} překračuje povolené množství ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nenalezena žádná výrobní čísla" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Počet jedinečných sériových čísel ({len(serials)}) musí odpovídat množství ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Odstranit HTML tagy z této hodnoty" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "Data obsahují zakázaný markdown obsah" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Neplatný výběr" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Název" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Popis" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Popis (volitelně)" @@ -470,11 +470,11 @@ msgstr "Chyba serveru" msgid "An error has been logged by the server." msgstr "Server zaznamenal chybu." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Musí být platné číslo" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Měna" @@ -522,28 +522,29 @@ msgstr "Nesmí přesáhnout 100%" msgid "Invalid value for overage" msgstr "Neplatná hodnota překročení" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Stav objednávky" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Nadřazená sestava" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "Zahrnout varianty" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "Zahrnout varianty" msgid "Part" msgstr "Díl" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Kategorie" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Sestava předků" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Přiřazeno mě" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Vystavil" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Přiřazeno" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "Vytvořeno před" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "Vytvořeno po" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "Má počáteční datum" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "Datum začátku před" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "Datum začátku po" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "Má cílové datum" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "Cílové datum před" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "Cílové datum po" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "Dokončeno před" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "Dokončeno po" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "Min. datum" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "Max datum" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "Vyloučit strom" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Sestavení musí být zrušeno před odstraněním" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Spotřební materiál" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Volitelné" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Sestava" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Sledováno" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Testovatelné" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "Objednávka nevyřízená" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Přiděleno" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Dostupné" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Výrobní příkaz" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Výrobní příkazy" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Kusovník sestavy ještě nebyl schválen" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "Výrobní příkaz nesmí být vytvořen pro neaktivní díl" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Neplatná volba nadřazeného sestavení" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Musí být specifikován odpovědný uživatel nebo skupina" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Díl výrobního příkazu nelze změnit" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "Cílové datum musí být po datu zahájení" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Referenční číslo výrobního příkazu" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Referenční číslo výrobního příkazu" msgid "Reference" msgstr "Reference" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Stručný popis sestavení (nepovinné)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Výrobní příkaz, kterému je tento výrobní příkaz přidělen" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Vyber téma, které chceš stavět" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Referenční číslo prodejní objednávky" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Prodejní objednávka, které je tento výrobní příkaz přidělen" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Zdrojové umístění" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Vyberte lokaci, ze které chcete brát zásoby pro sestavu (nechte prázdné, chcete-li brát zásoby z libovolné lokace)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Cílová lokace" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Vyberte lokaci, kde budou dokončené položky uloženy" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Množství sestav" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Počet skladových položek k sestavení" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Dokončené položky" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Počet skladových položek, které byly dokončeny" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Stav sestavení" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Stavový kód sestavení" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Kód dávky" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Dávkový kód pro tento výstup sestavení" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Datum vytvoření" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "Datum zahájení sestavení" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "Plánované datum zahájení této objednávky" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Cílové datum dokončení" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Cílové datum dokončení sestavení. Sestavení bude po tomto datu v prodlení." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Datum dokončení" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "dokončil" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Vystavil" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Uživatel, který vystavil tento výrobní příkaz" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Odpovědný" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Uživatel nebo skupina odpovědná za tento výrobní příkaz" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Externí odkaz" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Odkaz na externí URL" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Priorita sestavení" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Priorita tohoto výrobního příkazu" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Kód projektu" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Kód projektu pro tento výrobní příkaz" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Nepodařilo se uvolnit úlohu pro dokončení přidělení sestavy" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Výrobní příkaz {build} byl dokončen" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Výrobní příkaz byl dokončen" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "U sledovatelných dílů musí být uvedena sériová čísla" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Nebyl specifikováno žádný výstup sestavení" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Výstup sestavení je již dokončen" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Výstup neodpovídá výrobnímu příkazu" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Množství musí být vyšší než nula" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Množství nemůže být větší než výstupní množství" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Výstup sestavy {serial} neprošel všemi požadavky" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Řádková položka výrobního příkazu" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Vytvořit objekt" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Vytvořit objekt" msgid "Quantity" msgstr "Množství" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Vyžadované množství pro výrobní příkaz" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Položka sestavení musí specifikovat výstup sestavení, protože hlavní díl je označen jako sledovatelný" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Zabrané množství ({q}) nesmí překročit dostupné skladové množství ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Skladová položka je nadměrně zabrána" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Zabrané množství musí být větší než nula" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Množství musí být 1 pro zřetězený sklad" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Vybraná skladová položka neodpovídá řádku kusovníku" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Skladové položky" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Zdrojová skladová položka" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Skladové množství pro sestavení" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Instalovat do" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Cílová skladová položka" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Automaticky přidělit požadované položky s odpovídajícími sériovými čísly" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Následující sériová čísla již existují nebo jsou neplatná" @@ -1107,8 +1109,8 @@ msgstr "Důvod vyřazení výstupu(ů) sestavy" msgid "Location for completed build outputs" msgstr "Umístění dokončených výstupů sestavy" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "Název dílu kusovníku" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Díl dodavatele" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "Název kategorie dílů" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Sledovatelné" @@ -1321,12 +1323,12 @@ msgstr "Sledovatelné" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Povolit varianty" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Položka kusovníku" @@ -1389,11 +1391,11 @@ msgstr "Hotovo" msgid "Stock required for build order" msgstr "Zásoby potřebné pro výrobní příkaz" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Opožděný výrobní příkaz" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "Objednávka sestavy {bo} je nyní opožděná" @@ -1485,8 +1487,8 @@ msgstr "Klíčový text musí být jedinečný" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Uživatel" msgid "Price break quantity" msgstr "Množství cenové slevy" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Cena" @@ -1519,7 +1521,7 @@ msgstr "Název tohoto webhooku" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktivní" @@ -1598,8 +1600,8 @@ msgstr "Název" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Odkaz" @@ -1624,7 +1626,7 @@ msgstr "Přečteno" msgid "Was this news item read?" msgstr "Byla tato novinka přečtena?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Definice" msgid "Unit definition" msgstr "Definice jednotky" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Příloha" @@ -1716,7 +1718,7 @@ msgstr "Velikost souboru" msgid "File size in bytes" msgstr "Velikost souboru v bytech" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "Uveden neplatný typ modelu pro přílohu" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Hodnota" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "Název se musí lišit od názvů referenčního statusu" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "Výběrové pole" @@ -1830,7 +1832,7 @@ msgstr "Název výběrového pole" msgid "Description of the selection list" msgstr "Popis výběrového pole" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "Uzamčeno" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Data" @@ -1938,7 +1940,7 @@ msgstr "Datum a čas skenování čárového kódu" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Kontext" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Výsledek" @@ -1963,113 +1965,113 @@ msgstr "Výsledek" msgid "Was the barcode scan successful?" msgstr "Bylo skenování čárového kódu úspěšné?" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Nový {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Byla vytvořena nová objednávka a přiřazena k vám" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} zrušeno" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "Objednávka, která je vám přidělena, byla zrušena" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Přijaté položky" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Naplánované úlohy" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Neúspěšné úlohy" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "ID úlohy" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Unikátní ID úlohy" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Čas uzamčení" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Jméno úkolu" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Funkce" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Název funkce" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Argumenty" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Argumenty úlohy" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Argumenty klíčových slov" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Argumenty klíčových slov úlohy" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Název souboru" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "Typ modelu" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "Uživatel nemá oprávnění k vytváření nebo úpravám příloh pro tento model" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "Kopírovat šablony parametrů kategorie" msgid "Copy category parameter templates when creating a part" msgstr "Kopírování šablon parametrů kategorie při vytváření dílu" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Šablona" @@ -2423,7 +2425,7 @@ msgstr "Díly jsou ve výchozím nastavení šablony" msgid "Parts can be assembled from other components by default" msgstr "Díly lze ve výchozím nastavení sestavit z jiných komponentů" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Komponent" @@ -2432,7 +2434,7 @@ msgstr "Komponent" msgid "Parts can be used as sub-components by default" msgstr "Díly lze ve výchozím nastavení použít jako dílčí komponenty" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Možné zakoupit" @@ -2440,7 +2442,7 @@ msgstr "Možné zakoupit" msgid "Parts are purchaseable by default" msgstr "Díly jsou zakoupitelné ve výchozím nastavení" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Prodejné" @@ -2452,7 +2454,7 @@ msgstr "Díly jsou prodejné ve výchozím nastavení" msgid "Parts are trackable by default" msgstr "Díly jsou sledovatelné ve výchozím nastavení" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Nehmotné (virtuální)" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "Zaznamenávat chyby, které se vyskytnou při vytváření reportů" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Velikost stránky" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "Vyhledávací dotazy vracejí výsledky pro shody celých slov" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Zobrazit množství ve formulářích" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Zobrazit dostupné množství dílů v některých formulářích" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Klávesa Escape zavře formuláře" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Zavřít modální formuláře pomocí klávesy escape" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Pevná navigační lišta" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "Pozice navigační lišty je pevně nastavena na horní okraj obrazovky" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Formát data" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Preferovaný formát pro zobrazení datumů" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Plánování dílů" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Zobrazit informace o plánování dílů" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Inventura dílu" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Zobrazit informace o skladových zásobách dílů (pokud je povolena funkce inventury)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Délka textu v tabulce" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Maximální délka textu v zobrazeních tabulek" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Přijímat zprávy o chybách" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "Dostávat oznámení o systémových chybách" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "Poslední použité tiskárny" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "Uložte poslední použité tiskárny pro uživatele" @@ -3530,7 +3540,7 @@ msgstr "Kontaktní telefonní číslo" msgid "Contact email address" msgstr "Kontaktní e-mailová adresa" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Kontakt" @@ -3575,7 +3585,7 @@ msgstr "Vyrábí tato společnost díly?" msgid "Default currency used for this company" msgstr "Výchozí měna používaná pro tuto společnost" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Adresa" @@ -3672,7 +3682,7 @@ msgstr "Odkaz na informace o adrese (externí)" msgid "Manufacturer Part" msgstr "Výrobce dílu" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Základní díl" @@ -3714,7 +3724,7 @@ msgstr "Název parametru" msgid "Parameter value" msgstr "Hodnota parametru" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Jednotky" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Odkazovaný díl výrobce musí odkazovat na stejný základní díl" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Popis dílu dodavatele" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Popis dílu dodavatele" msgid "Note" msgstr "Poznámka" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "základní cena" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimální poplatek (např. poplatek za skladování)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Balení" @@ -3802,7 +3812,7 @@ msgstr "Počet kusů v balení" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Celkové množství dodávané v jednom balení. Pro jednotlivé položky ponechte prázdné." -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "více" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "Chyby" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "Počet kopií, které se mají tisknout pro každý štítek" msgid "Connected" msgstr "Připojeno" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Neznámý" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Označení objednávky" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "Vytvořeno před" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "Vytvořeno po" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "Cílové datum před" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "Cílové datum po" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "Dokončeno před" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "Dokončeno po" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Objednávka" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Interní díl" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Dokončeno" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Nákupní objednávka" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Nákupní objednávka" msgid "Sales Order" msgstr "Prodejní objednávka" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Celková cena" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Cílené datum" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Datum vystavení" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Datum vystavení objednávky" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Společnost, od které se položky objednávají" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Reference dodavatele" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Referenční kód objednávky dodavatele" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "přijal" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "Datum dokončení objednávky" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Místo určení" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "Dodavatel dílu se musí shodovat s dodavatelem PO" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "Množství musí být kladné" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Zákazník" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Společnost, jíž se položky prodávají" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "Stav prodejní objednávky" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Reference zákazníka " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Referenční kód objednávky zákazníka" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Datum odeslání" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "odesláno společností" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "Objednávka je již dokončena" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "Objednávka je již zrušena" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Pouze otevřená objednávka může být označena jako kompletní" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Objednávku nelze dokončit, protože dodávky jsou nekompletní" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "Objednávka nemůže být dokončena, protože jsou neúplné řádkové položky" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Množství položky" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Označení řádkové položky" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Poznámky k řádkovým položkám" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Cílové datum pro tuto řádkovou položku (pro použití cílového data z objednávky ponechte prázdné)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Popis řádkové položky (nepovinné)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Dodatečný kontext pro tento řádek" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Cena za jednotku" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "Řádková položka nákupní objednávky" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "Dodavatelský díl musí odpovídat dodavateli" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Díl dodavatele" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Doručeno" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Počet přijatých položek" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Nákupní cena" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Jednotková nákupní cena" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "Řádková položka prodejní objednávky" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Virtuální díl nelze přiřadit k prodejní objednávce" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "K prodejní objednávce lze přiřadit pouze prodejné díly" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Prodejní cena" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Jednotková prodejní cena" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Odesláno" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Odeslané množství" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Datum odeslání" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Datum doručení" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "Datum doručení zásilky" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Kontroloval(a)" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Uživatel, který zkontroloval tuto zásilku" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Doprava" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Číslo zásilky" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Sledovací číslo" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Informace o sledování zásilky" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Číslo faktury" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Referenční číslo přiřazené faktury" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "Zásilka již byla odeslána" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "Zásilka nemá žádné přidělené skladové položky" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "Skladová položka nebyla přiřazena" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Nelze přidělit skladovou položku na řádek s jiným dílem" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "Nelze přidělit skladovou položku na řádek bez dílu" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Přidělené množství nesmí překročit množství zásob" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "Množství musí být 1 pro serializovanou skladovou položku" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "Prodejní objednávka neodpovídá zásilce" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "Zásilka neodpovídá prodejní objednávce" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Řádek" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Odkaz na zásilku z prodejní objednávky" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Položka" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Vyberte skladovou položku pro přidělení" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Zadejte množství pro přidělení zásob" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "Reference návratové objednávky" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "Společnost, od které se vrací položky" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Stav návratové objednávky" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Vyberte položku pro vrácení od zákazníka" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Datum přijetí" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "Datum přijetí této vrácené položky" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Výsledek" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "Výsledky pro tuto položku" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "Náklady spojené s návratem nebo opravou této položky" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "Sloučit položky se stejným dílem, místem určení a cílovým datem msgid "SKU" msgstr "Číslo zboží (SKU)" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Interní číslo dílu" @@ -4848,7 +4860,7 @@ msgstr "Vyberte cílové umístění pro přijaté položky" msgid "Enter batch code for incoming stock items" msgstr "Zadat kód šarže pro příchozí skladové položky" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "Vrácení peněz" msgid "Reject" msgstr "Odmítnout" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Opožděná prodejní objednávka" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "Prodejní objednávka {so} je nyní opožděná" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Schválit celý kusovník" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "Je revizí" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "Má revize" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "Kusovník schválen" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Kategorie dílu" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Kategorie dílů" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Výchozí umístění" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Výchozí umístění dílů v této kategorii" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Strukturální" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Díly nesmějí být přímo zařazeny do strukturální kategorie, ale mohou být zařazeny do jejích podkategorií." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Výchozí klíčová slova" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Výchozí klíčová slova pro díly v této kategorii" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Ikona" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Ikona (volitelná)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Díly" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "Tento díl nelze odstranit, protože je použit v sestavě" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Díl '{self}' nelze použít v kusovníku '{parent}' (rekurzivní)" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Díl '{parent}' je využit v kusovníku '{self}' (rekurzivní)" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "Revize jsou povoleny pouze pro sestavy" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Skladová položka s tímto sériovým číslem již existuje" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Název dílu" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Je šablonou" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Klíčová slova" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Klíčová slova dílu pro zlepšení vyhledávání" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Kategorie dílu" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Číslo revize nebo verze dílu" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Revize" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Výchozí dodavatel" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Výchozí díl dodavatele" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Lze tento díl sestavit z jiných dílů?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Lze tento díl použít k sestavení jiných dílů?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Lze u tohoto dílu sledovat jednotlivé položky?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Lze tento díl prodávat zákazníkům?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Je tento díl aktivní?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "Je to virtuální díl, například softwarový produkt nebo licence?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Kontrolní součet kusovníku" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Uložený kontrolní součet kusovníku" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "Kusovník zkontroloval" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "Datum kontroly kusovníku" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Poslední inventura" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Minimální cena kusovníku" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Maximální cena kusovníku" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Minimální nákupní cena" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Maximální nákupní cena" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Minimální cena variant" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Maximální cena variant" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Minimální cena" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Maximální cena" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Minimální prodejní cena" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Maximální prodejní cena" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Počet položek" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Datum" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Další poznámky" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Minimální cena zásob" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "Maximální cena zásob" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Počet dílů" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Název testu" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "Položku kusovníku nelze změnit - sestava je uzamčena" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Vyberte nadřazený díl" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Reference položky kusovníku" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Poznámky k položce kusovníku" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Schváleno" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "Tato položka kusovníku ještě nebyla schválena" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "Činnost nebyla specifikována" msgid "No matching action found" msgstr "Nebyla nalezena odpovídající činnost" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Pro data čárového kódu nebyla nalezena shoda" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Pro data čárového kódu byla nalezena shoda" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "Čárový kód neodpovídá žádné existující skladové položce" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "Skladová položka se neshoduje s řádkovou položkou" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "Skladová položka byla přidělena prodejní objednávce" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "Plugin '{p}' není kompatibilní s aktuální verzí InvenTree {v}" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "Plugin vyžaduje alespoň verzi {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "Plugin vyžaduje nanejvýš verzi {v}" @@ -7258,116 +7279,116 @@ msgstr "Legal" msgid "Letter" msgstr "Letter" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filtry" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Šířka [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Šířka štítku zadaná v mm" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Výška [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Výška štítku uvedená v mm" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "Celkem" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Sériové číslo" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "Typ skladového umístění" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "Typy skladových umístění" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Skladové umístění" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Skladová umístění" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Správce" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Skladové položky nelze umístit přímo do strukturálních skladových umístění, ale lze je umístit do podřízených skladových umístění." -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Externí" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "Toto je externí skladové umístění" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "Typ umístění" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "Typ tohoto skladového umístění" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "Toto skladové umístění nemůžete označit jako strukturální, protože již obsahuje skladové položky!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "Díl musí být zadán" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "Skladové položky nelze umístit do strukturálních skladových umístění!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "Nelze vytvořit skladovou položku pro virtuální díl" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "Množství musí být 1 pro položku se sériovým číslem" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "Položka nemůže patřit sama sobě" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Nadřazená skladová položka" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Vyberte odpovídající díl dodavatele pro tuto skladovou položku" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "Kde se tato skladová položka nachází?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Balení, ve kterém je tato skladová položka uložena" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Instalováno v" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "Je tato položka nainstalována v jiné položce?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Sériové číslo pro tuto položku" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Kód šarže pro tuto skladovou položku" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "Výrobní příkaz, který spotřeboval tuto skladovou položku" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Zdrojová nákupní objednávka" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Nákupní objednávka pro tuto skladovou položku" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Odstranit tuto skladovou položku po vyčerpání zásob" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Skladová položka byla přidělena prodejní objednávce" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Skladová položka je nainstalována v jiné položce" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "Skladová položka obsahuje jiné položky" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Skladová položka byla přidělena zákazníkovi" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "Skladová položka je ve výrobě" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Duplicitní skladové položky" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Skladové položky musí odkazovat na stejný díl" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Skladové položky musí odkazovat na stejný díl dodavatele" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Zásobová položka nemůže být přesunuta, protože není skladem" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "Sledování skladových položek" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "Výsledek testu skladové položky" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Výsledek testu" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Uživatelé" msgid "Select which users are assigned to this group" msgstr "Vyberte, kteří uživatelé jsou zařazeni do této skupiny" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "Následující uživatelé jsou členy více skupin" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Osobní údaje" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Oprávnění" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Důležité termíny" diff --git a/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po index 013ba0aee0..bc6a0f9ba4 100644 --- a/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:41\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Danish\n" "Language: da_DK\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API endpoint ikke fundet" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Bruger har ikke tilladelse til at se denne model" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Kunne ikke konvertere {original} til {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Ugyldigt antal angivet" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Værdi '{name}' vises ikke i mønsterformat" msgid "Provided value does not match required pattern: " msgstr "Den angivne værdi matcher ikke det påkrævede mønster: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Serienummer streng er tom" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Duplikeret serienummer" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Ingen serienumre fundet" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Fjern HTML-tags fra denne værdi" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Ugyldigt valg" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Navn" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Beskrivelse" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Beskrivelse (valgfri)" @@ -470,11 +470,11 @@ msgstr "Serverfejl" msgid "An error has been logged by the server." msgstr "En fejl blev logget af serveren." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Skal være et gyldigt tal" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Valuta" @@ -522,28 +522,29 @@ msgstr "Overskuddet må ikke overstige 100%" msgid "Invalid value for overage" msgstr "Ugyldig værdi for overskud" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Overordnet produktion" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Del" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Produktion skal anulleres, før den kan slettes" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Forbrugsvare" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Valgfri" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Sporet" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Allokeret" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Tilgængelig" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Produktionsordre" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Produktionsordrer" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Ugyldigt valg for overordnet produktion" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Byggeordre enhed kan ikke ændres" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Produktionsordre reference" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Produktionsordre reference" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Produktionsordre som er tildelt denne produktion" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Vælg dele til produktion" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Salgsordrereference" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Salgsordre, som er tildelt denne produktion" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Kilde Lokation" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Vælg lokation for lager, som skal benyttes til denne produktion (lad feltet stå tomt for at benytte vilkårligt lager)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Destinations Placering" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Vælg placering, hvor de færdige elementer vil blive gemt" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Produktions antal" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Antal lagervarer som skal produceres" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Afsluttede elementer" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Antal lagervarer som er færdiggjort" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Produktions Status" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Produktions statuskode" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Batch Kode" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Batch kode til dette produktions output" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Oprettelsesdato" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Projekteret afslutningsdato" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Dato for afslutning" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "udført af" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Udstedt af" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Bruger som udstedte denne byggeordre" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Ansvarlig" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Bruger eller gruppe ansvarlig for denne byggeordre" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Ekstern link" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Link til ekstern URL" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Bygge Prioritet" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Prioritet af denne byggeordre" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Bygningsordre {build} er fuldført" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "En byggeordre er fuldført" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "Fuldført" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Bruger" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Vedhæftning" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Filnavn" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Afsendt" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "Refusion" msgid "Reject" msgstr "Afvis" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po index 98a6fe89a4..d2d1ee2dd7 100644 --- a/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "Sie müssen die Zwei-Faktor-Authentifizierung aktivieren, bevor Sie etwas tun können." -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API-Endpunkt nicht gefunden" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "Ungültige Artikelliste angegeben" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Ungültige Filter angegeben" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Benutzer hat keine Berechtigung, dieses Modell anzuzeigen" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Konnte {original} nicht in {unit} umwandeln" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Keine gültige Menge" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Ungültiger Dezimalwert" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Wert '{name}' hält das Musterformat nicht ein" msgid "Provided value does not match required pattern: " msgstr "Angegebener Wert entspricht nicht dem benötigten Muster: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "Kann nicht mehr als 1000 Elemente auf einmal serialisieren" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Keine Seriennummer angegeben" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Duplizierter Seriennummer" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Ungültige Gruppe: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Gruppenbereich {group} überschreitet die zulässige Menge ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Keine Seriennummern gefunden" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Anzahl der eindeutigen Seriennummern ({len(serials)}) muss mit der Menge übereinstimmen ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Entferne HTML-Tags von diesem Wert" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "Daten enthalten verbotene Markdown-Inhalte" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Ungültige Auswahl" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Name" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Beschreibung" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Beschreibung (optional)" @@ -470,11 +470,11 @@ msgstr "Serverfehler" msgid "An error has been logged by the server." msgstr "Ein Fehler wurde vom Server protokolliert." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Muss eine gültige Nummer sein" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Währung" @@ -522,28 +522,29 @@ msgstr "Überschuss darf 100% nicht überschreiten" msgid "Invalid value for overage" msgstr "Ungültiger Wert für Ausschuss" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Bestellstatus" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Eltern-Bauauftrag" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "Varianten einschließen" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "Varianten einschließen" msgid "Part" msgstr "Teil" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Kategorie" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Vorgänger-Build" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Mir zugewiesen" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Aufgegeben von" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Zugewiesen zu" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "Erstellt vor" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "Erstellt nach" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "Hat Startdatum" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "Gültigkeitsdauer vor" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "Gültigkeitsdauer nach" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "geplantes Bestelldatum" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "Zieldatum vor" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "Zieldatum nach" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "Abgeschlossen vor" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "Abgeschlossen nach" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "Baum ausschließen" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Bauauftrag muss abgebrochen werden, bevor er gelöscht werden kann" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Verbrauchsmaterial" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Optional" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Baugruppe" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Nachverfolgt" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Prüfbar" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "Offene Bestellung" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Zugeordnet" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Verfügbar" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Bauauftrag" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Bauaufträge" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Die Stückliste wurde noch nicht kontrolliert" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "Baureihenfolge kann nicht für ein inaktives Teil erstellt werden" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "Baureihenfolge kann nicht für ein inaktives Teil erstellt werden" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Ungültige Wahl für übergeordneten Bauauftrag" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Verantwortlicher Benutzer oder Gruppe muss angegeben werden" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Teil in Bauauftrag kann nicht geändert werden" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "Zieldatum muss nach dem Startdatum liegen" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Bauauftragsreferenz" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Bauauftragsreferenz" msgid "Reference" msgstr "Referenz" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Kurze Beschreibung des Baus (optional)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Teil für den Bauauftrag wählen" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Auftrag Referenz" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Bestellung, die diesem Bauauftrag zugewiesen ist" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Quell-Lagerort" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Entnahme-Lagerort für diesen Bauauftrag wählen (oder leer lassen für einen beliebigen Lagerort)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Ziel-Lagerort" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Lagerort an dem fertige Objekte gelagert werden auswählen" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Bau-Anzahl" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Anzahl der zu bauenden Lagerartikel" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Fertiggestellte Teile" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Anzahl der fertigen Lagerartikel" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Bauauftrags-Status" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Bau-Statuscode" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Losnummer" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Losnummer für dieses Endprodukt" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Erstelldatum" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "Startdatum des Bauauftrags" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "Geplantes Startdatum des Bauauftrags" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "geplantes Fertigstellungsdatum" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Zieldatum für Bauauftrag-Fertigstellung." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Fertigstellungsdatum" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "Fertiggestellt von" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Aufgegeben von" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Nutzer der diesen Bauauftrag erstellt hat" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Verantwortlicher Benutzer" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Benutzer oder Gruppe verantwortlich für diesen Bauauftrag" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Externer Link" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Link zu einer externen URL" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Bauauftrags-Priorität" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Priorität dieses Bauauftrags" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Projektcode" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Projektcode für diesen Auftrag" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Fehler beim Abladen der Aufgabe, um die Build-Allokation abzuschließen" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Bauauftrag {build} wurde fertiggestellt" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Ein Bauauftrag wurde fertiggestellt" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Seriennummern müssen für nachverfolgbare Teile angegeben werden" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "kein Endprodukt angegeben" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Endprodukt bereits hergstellt" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Endprodukt stimmt nicht mit dem Bauauftrag überein" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Anzahl muss größer Null sein" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Menge kann nicht größer als die Ausgangsmenge sein" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Build Ausgabe {serial} hat nicht alle erforderlichen Tests bestanden" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Bauauftragsposition" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Objekt bauen" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Objekt bauen" msgid "Quantity" msgstr "Anzahl" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Erforderliche Menge für Auftrag" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Bauauftragsposition muss ein Endprodukt festlegen, da der übergeordnete Teil verfolgbar ist" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Zugewiesene Menge ({q}) darf nicht verfügbare Menge ({a}) übersteigen" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "BestandObjekt ist zu oft zugewiesen" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Reserviermenge muss größer null sein" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Ausgewählter Lagerbestand stimmt nicht mit BOM-Linie überein" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Lagerartikel" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Quell-Lagerartikel" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Anzahl an Lagerartikel dem Bauauftrag zuweisen" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Installiere in" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Ziel-Lagerartikel" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Benötigte Lagerartikel automatisch mit passenden Seriennummern zuweisen" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Die folgenden Seriennummern existieren bereits oder sind ungültig" @@ -1107,8 +1109,8 @@ msgstr "Grund für das Verwerfen des Bauauftrages/der Bauaufträge" msgid "Location for completed build outputs" msgstr "Lagerort für fertige Endprodukte" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "Zusammenbau" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Zuliefererteil" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Nachverfolgbar" @@ -1321,12 +1323,12 @@ msgstr "Nachverfolgbar" msgid "Inherited" msgstr "Vererbt" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Varianten zulassen" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Stücklisten-Position" @@ -1389,11 +1391,11 @@ msgstr "Fertig" msgid "Stock required for build order" msgstr "Bestand für Bauauftrag erforderlich" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Überfälliger Bauauftrag" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "Bauauftrag {bo} ist jetzt überfällig" @@ -1485,8 +1487,8 @@ msgstr "Schlüsseltext muss eindeutig sein" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Benutzer" msgid "Price break quantity" msgstr "Preisstaffelungs Anzahl" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Preis" @@ -1519,7 +1521,7 @@ msgstr "Name für diesen Webhook" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktiv" @@ -1598,8 +1600,8 @@ msgstr "Titel" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Link" @@ -1624,7 +1626,7 @@ msgstr "Gelesen" msgid "Was this news item read?" msgstr "Wurde diese Nachricht gelesen?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Definition" msgid "Unit definition" msgstr "Einheitsdefinition" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Anhang" @@ -1716,7 +1718,7 @@ msgstr "Dateigröße" msgid "File size in bytes" msgstr "Dateigröße in Bytes" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "Ungültiger Modelltyp für Anhang angegeben" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Wert" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "Name muss sich von den Namen des Referenzstatus unterscheiden" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Wert" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Kontext" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Ergebnis" @@ -1963,113 +1965,113 @@ msgstr "Ergebnis" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Neue {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Eine neue Bestellung wurde erstellt und Ihnen zugewiesen" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} storniert" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "Eine Bestellung, die Ihnen zugewiesen war, wurde storniert" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Artikel erhalten" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Artikel wurden aus einer Bestellung erhalten" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "Artikel wurden aus einer Rücksendung erhalten" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Fehler in Plugin aufgetreten" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Wird ausgeführt" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Anstehende Aufgaben" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Geplante Aufgaben" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Fehlgeschlagene Aufgaben" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "Aufgabe-ID" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Eindeutige Aufgaben-ID" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Sperren" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Sperrzeit" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Aufgabenname" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Funktion" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Funktionsname" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Parameter" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Aufgaben-Parameter" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Schlüsselwort Parameter" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Schlüsselwort Parameter für Aufgaben" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Dateiname" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "Modelltyp" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "Benutzer hat keine Berechtigung, Anhänge für dieses Modell zu erstellen oder zu bearbeiten" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "Kategorie-Parametervorlage kopieren" msgid "Copy category parameter templates when creating a part" msgstr "Kategorie-Parameter Vorlagen kopieren wenn ein Teil angelegt wird" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Vorlage" @@ -2423,7 +2425,7 @@ msgstr "Teile sind standardmäßig Vorlagen" msgid "Parts can be assembled from other components by default" msgstr "Teile können standardmäßig aus anderen Teilen angefertigt werden" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Komponente" @@ -2432,7 +2434,7 @@ msgstr "Komponente" msgid "Parts can be used as sub-components by default" msgstr "Teile können standardmäßig in Baugruppen benutzt werden" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Kaufbar" @@ -2440,7 +2442,7 @@ msgstr "Kaufbar" msgid "Parts are purchaseable by default" msgstr "Artikel sind grundsätzlich kaufbar" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Verkäuflich" @@ -2452,7 +2454,7 @@ msgstr "Artikel sind grundsätzlich verkaufbar" msgid "Parts are trackable by default" msgstr "Artikel sind grundsätzlich verfolgbar" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtuell" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "Fehler, die beim Erstellen von Berichten auftreten, protokollieren" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Seitengröße" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "Suchabfragen liefern Ergebnisse für ganze Wortkombinationen" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "zeige Bestand in Eingabemasken" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Zeige den verfügbaren Bestand in einigen Eingabemasken" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Esc-Taste schließt Formulare" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Benutze die Esc-Taste, um Formulare zu schließen" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Fixierter Navigationsleiste" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "Position der Navigationsleiste am oberen Bildschirmrand fixieren" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Datumsformat" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Bevorzugtes Format für die Anzeige von Daten" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Teilzeitplanung" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Zeige Zeitplanung für Teile" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Inventur" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Zeigt Inventur-Informationen an (falls die Inventurfunktion aktiviert ist)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Zeichenkettenlänge in Tabellen" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Maximale Länge für Zeichenketten, die in Tabellenansichten angezeigt werden" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Fehlerberichte empfangen" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "Benachrichtigungen bei Systemfehlern erhalten" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "Zuletzt verwendete Druckmaschinen" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "Die zuletzt benutzten Druckmaschinen für einen Benutzer speichern" @@ -3530,7 +3540,7 @@ msgstr "Kontakt-Telefon" msgid "Contact email address" msgstr "Kontakt-Email" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Kontakt" @@ -3575,7 +3585,7 @@ msgstr "Produziert diese Firma Teile?" msgid "Default currency used for this company" msgstr "Standard-Währung für diese Firma" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Adresse" @@ -3672,7 +3682,7 @@ msgstr "Link zu Adressinformationen (extern)" msgid "Manufacturer Part" msgstr "Herstellerteil" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Basisteil" @@ -3714,7 +3724,7 @@ msgstr "Parametername" msgid "Parameter value" msgstr "Parameterwert" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Einheiten" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Zuliefererbeschreibung des Teils" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Zuliefererbeschreibung des Teils" msgid "Note" msgstr "Notiz" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "Basiskosten" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Mindestpreis" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Verpackungen" @@ -3802,7 +3812,7 @@ msgstr "Packmenge" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Gesamtmenge, die in einer einzelnen Packung geliefert wird. Für Einzelstücke leer lassen." -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "Vielfache" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "Fehler" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Gültig" @@ -4078,7 +4088,7 @@ msgstr "Anzahl der zu druckenden Kopien für jedes Label" msgid "Connected" msgstr "Verbunden" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Unbekannt" @@ -4166,101 +4176,101 @@ msgstr "Maschinenkonfiguration" msgid "Config type" msgstr "Konfigurationstyp" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Bestellreferenz" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "Ausstehend" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Erstellt von" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "Hat Preise" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Bestellung" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "Bestellung abgeschlossen" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Internes Teil" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "Bestellung ausstehend" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Fertig" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Bestellung" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Bestellung" msgid "Sales Order" msgstr "Auftrag" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Rücksendeauftrag" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Gesamtpreis" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "Gesamtpreis für diese Bestellung" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Auftragswährung" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "Währung für diesen Auftrag (leer lassen, um Firmenstandard zu verwenden)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "Kontakt stimmt nicht mit der ausgewählten Firma überein" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Auftragsbeschreibung (optional)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Projektcode für diesen Auftrag auswählen" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Link auf externe Seite" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Zieldatum" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Geplantes Lieferdatum für Auftrag." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Aufgabedatum" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Datum an dem die Bestellung aufgegeben wurde" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Nutzer oder Gruppe der/die für diesen Auftrag zuständig ist/sind" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "Ansprechpartner für diesen Auftrag" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "Firmenadresse für diesen Auftrag" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Bestell-Referenz" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Bestellungs-Status" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Firma bei der die Teile bestellt werden" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Zulieferer-Referenz" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Zulieferer Bestellreferenz" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "Empfangen von" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "Datum an dem der Auftrag fertigstellt wurde" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Ziel-Lager" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "Teile-Zulieferer muss dem Zulieferer der Bestellung entsprechen" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "Anzahl muss eine positive Zahl sein" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Kunde" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Firma an die die Teile verkauft werden" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Kundenreferenz" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Bestellreferenz" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Versanddatum" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "Versand von" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "Bestellung ist bereits abgeschlossen" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "Bestellung ist bereits storniert" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Nur ein offener Auftrag kann als abgeschlossen markiert werden" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Auftrag kann nicht abgeschlossen werden, da unvollständige Sendungen vorhanden sind" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "Auftrag kann nicht abgeschlossen werden, da es unvollständige Positionen gibt" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Anzahl" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Position - Referenz" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Position - Notizen" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Zieldatum für diesen Einzelposten (leer lassen, um das Zieldatum des Auftrags zu verwenden)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Positionsbeschreibung (optional)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Zusätzlicher Kontext für diese Zeile" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Stückpreis" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "Lieferantenteil muss mit Lieferant übereinstimmen" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Zuliefererteil" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Empfangen" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Empfangene Objekt-Anzahl" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Preis" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Preis pro Einheit" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Ein virtuelles Teil kann nicht einem Auftrag zugeordnet werden" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Nur verkaufbare Teile können einem Auftrag zugewiesen werden" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Verkaufspreis" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Stückverkaufspreis" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Versendet" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Versendete Menge" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Versanddatum" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Lieferdatum" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "Versanddatum" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Kontrolliert von" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Benutzer, der diese Sendung kontrolliert hat" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Sendung" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Sendungsnummer" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Sendungsverfolgungsnummer" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Informationen zur Sendungsverfolgung" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Rechnungsnummer" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Referenznummer für zugehörige Rechnung" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "Sendung wurde bereits versandt" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "Sendung hat keine zugewiesene Lagerartikel" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "Lagerartikel wurde nicht zugewiesen" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Kann Lagerartikel keiner Zeile mit einem anderen Teil hinzufügen" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "Kann Lagerartikel keiner Zeile ohne Teil hinzufügen" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Die zugeordnete Anzahl darf nicht die verfügbare Anzahl überschreiten" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "Anzahl für serialisierte Lagerartikel muss 1 sein" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "Auftrag gehört nicht zu Sendung" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "Sendung gehört nicht zu Auftrag" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Position" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Sendungsnummer-Referenz" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Position" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Lagerartikel für Zuordnung auswählen" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Anzahl für Bestandszuordnung eingeben" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "Rücksendungsreferenz" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "Firma von der die Artikel zurückgeschickt werden" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Status der Rücksendung" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Artikel zur Rücksendung auswählen" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Empfangsdatum" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "Das Datum des Empfangs dieses Rücksendeartikels" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Ergebnis" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "Ergebnis für dieses Zeilenelement" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "Kosten für die Rückgabe oder Reparatur dieses Objektes" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "Zusammenführen von Elementen mit dem gleichen Teil, Ziel- und Zieldatum msgid "SKU" msgstr "Lieferanten-Teilenummer" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Interne Teilenummer" @@ -4848,7 +4860,7 @@ msgstr "Zielort für empfangene Teile auswählen" msgid "Enter batch code for incoming stock items" msgstr "Losnummer für eingehende Lagerartikel" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Ablaufdatum" @@ -5005,905 +5017,914 @@ msgstr "Rückerstattung" msgid "Reject" msgstr "Ablehnen" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Überfällige Bestellung" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "Bestellung {po} ist jetzt überfällig" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Überfälliger Auftrag" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "Auftrag {so} ist jetzt überfällig" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "Markiert" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "Nach markierten Kategorien filtern" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "Ebenen" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "Filter nach Kategorietiefe" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "Oberste Ebene" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "Mehrstufig" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "Unterkategorien in gefilterte Ergebnisse einbeziehen" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "Übergeordnetes" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "Nach übergeordneter Kategorie filtern" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "Unterkategorien in der angegebenen Kategorie ausschließen" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "Ergebnisse" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Eingehende Bestellung" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "Ausgehender Auftrag" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "Lagerartikel produziert von Bauauftrag" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "Lagerartikel für Bauauftrag benötigt" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Gesamte Stückliste validieren" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Diese Option muss ausgewählt werden" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "Verwendet" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Teil-Kategorie" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Teil-Kategorien" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Standard-Lagerort" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Standard-Lagerort für Teile dieser Kategorie" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Strukturell" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Teile können nicht direkt einer strukturellen Kategorie zugeordnet werden, können aber untergeordneten Kategorien zugeordnet werden." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Standard Stichwörter" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Standard-Stichworte für Teile dieser Kategorie" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Symbol" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Symbol (optional)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Sie können diese Teilekategorie nicht als strukturell festlegen, da ihr bereits Teile zugewiesen sind!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Teile" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "Dieses Teil kann nicht gelöscht werden, da es noch aktiv ist" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "Dieses Teil kann nicht gelöscht werden, da es in einem Bauauftrag verwendet wird" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Ungültige Auswahl für übergeordnetes Teil" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Teil '{self}' kann in der Stückliste nicht für '{parent}' (rekursiv) verwendet werden" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Teil '{parent}' wird in der Stückliste für '{self}' (rekursiv) verwendet" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN muss mit Regex-Muster {pattern} übereinstimmen" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Ein Lagerartikel mit dieser Seriennummer existiert bereits" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "Doppelte IPN in den Teil-Einstellungen nicht erlaubt" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Teil mit diesem Namen, IPN und Revision existiert bereits." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "Strukturellen Teilekategorien können keine Teile zugewiesen werden!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Name des Teils" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Ist eine Vorlage" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Ist dieses Teil eine Vorlage?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Ist dieses Teil eine Variante eines anderen Teils?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Variante von" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "Artikelbeschreibung (optional)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Schlüsselwörter" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Teile-Kategorie" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN (Interne Produktnummer)" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Revisions- oder Versionsnummer" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Version" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Standard Zulieferer" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Standard Zuliefererteil" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Standard Ablaufzeit" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Ablauf-Zeit (in Tagen) für Bestand dieses Teils" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Minimaler Bestand" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Minimal zulässiger Bestand" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Maßeinheit für diesen Teil" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Kann dieses Teil aus anderen Teilen angefertigt werden?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Kann dieses Teil zum Bauauftrag von anderen genutzt werden?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Hat dieses Teil Tracking für einzelne Objekte?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Kann dieses Teil an Kunden verkauft werden?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Ist dieses Teil aktiv?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "Ist dieses Teil virtuell, wie zum Beispiel eine Software oder Lizenz?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Prüfsumme der Stückliste gespeichert" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "Stückliste kontrolliert von" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "BOM Kontrolldatum" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Erstellungs-Nutzer" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "Verantwortlicher Besitzer für dieses Teil" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Letzte Inventur" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Mehrere verkaufen" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "Währung für die Berechnung der Preise im Cache" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Minimale Stücklisten Kosten" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "Minimale Kosten für Teile" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Maximale Stücklisten Kosten" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "Maximale Kosten für Teile" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Minimale Einkaufskosten" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "Minimale historische Kaufkosten" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Maximale Einkaufskosten" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "Maximale historische Einkaufskosten" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "Minimaler interner Preis" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "Minimale Kosten basierend auf den internen Staffelpreisen" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "Maximaler interner Preis" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "Maximale Kosten basierend auf internen Preisstaffeln" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "Minimaler Lieferantenpreis" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "Mindestpreis für Teil von externen Lieferanten" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "Maximaler Lieferantenpreis" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "Maximaler Preis für Teil von externen Lieferanten" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Minimale Variantenkosten" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "Berechnete minimale Kosten für Variantenteile" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Maximale Variantenkosten" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "Berechnete maximale Kosten für Variantenteile" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Minimale Kosten" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "Mindestkosten überschreiben" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Maximale Kosten" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "Maximale Kosten überschreiben" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "Berechnete Mindestkosten" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "Berechnete Maximalkosten" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "Mindestverkaufspreis" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "Mindestverkaufspreis basierend auf Staffelpreisen" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "Maximaler Verkaufspreis" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "Maximalverkaufspreis basierend auf Staffelpreisen" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Mindestverkaufskosten" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "Minimaler historischer Verkaufspreis" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Maximale Verkaufskosten" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "Maximaler historischer Verkaufspreis" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "Teil für die Inventur" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Stückzahl" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "Anzahl einzelner Bestandseinträge zum Zeitpunkt der Inventur" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "Insgesamt verfügbarer Lagerbestand zum Zeitpunkt der Inventur" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Datum" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "Datum der Inventur" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Zusätzliche Notizen" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "Benutzer, der diese Inventur durchgeführt hat" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Mindestbestandswert" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "Geschätzter Mindestwert des vorhandenen Bestands" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "Maximaler Bestandswert" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "Geschätzter Maximalwert des vorhandenen Bestands" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Bericht" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "Inventur-Berichtsdatei (intern generiert)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Anzahl der Teile" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "Anzahl der Teile, die von der Inventur abgedeckt werden" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "Benutzer, der diesen Inventurbericht angefordert hat" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "Ungültiger Vorlagenname - es muss mindestens ein alphanumerisches Zeichen enthalten sein" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "Auswahl muss einzigartig sein" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "Testvorlage mit demselben Schlüssel existiert bereits für Teil" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Test-Name" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Namen für diesen Test eingeben" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "Testschlüssel" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "Vereinfachter Schlüssel zum Test" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Test-Beschreibung" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Beschreibung für diesen Test eingeben" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Aktiviert" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "Ist dieser Test aktiviert?" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Benötigt" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "Muss dieser Test erfolgreich sein?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Erfordert Wert" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "Muss für diesen Test ein Wert für das Test-Ergebnis eingetragen werden?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Anhang muss eingegeben werden" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "Muss für diesen Test ein Anhang für das Test-Ergebnis hinzugefügt werden?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Auswahlmöglichkeiten" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "Gültige Optionen für diesen Test (durch Komma getrennt)" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "Checkbox-Parameter können keine Einheiten haben" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "Checkbox-Parameter können keine Auswahl haben" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "Vorlagen-Name des Parameters muss eindeutig sein" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Name des Parameters" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "Physikalische Einheiten für diesen Parameter" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "Parameter-Beschreibung" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "Checkbox" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "Ist dieser Parameter eine Checkbox?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "Gültige Optionen für diesen Parameter (durch Kommas getrennt)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "Ungültige Auswahl für Parameterwert" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Ausgangsteil" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Parameter Vorlage" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Parameter Wert" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Standard-Wert" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Standard Parameter Wert" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Ausgangsteil auswählen" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Untergeordnetes Teil" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Diese Stücklisten-Position ist optional" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Diese Stücklisten-Position ist ein Verbrauchsartikel (sie wird nicht in Bauaufträgen verfolgt)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Überschuss" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschätzter Ausschuss (absolut oder prozentual)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Referenz der Postion auf der Stückliste" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Notizen zur Stücklisten-Position" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Prüfsumme" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "überprüft" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "Diese Stücklistenposition wurde validiert" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "Wird vererbt" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Diese Stücklisten-Position wird in die Stücklisten von Teil-Varianten vererbt" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Bestand von Varianten kann für diese Stücklisten-Position verwendet werden" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "Menge muss eine Ganzzahl sein" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "Zuliefererteil muss festgelegt sein" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "Stücklisten Ersatzteile" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "Ersatzteil kann nicht identisch mit dem Hauptteil sein" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Übergeordnete Stücklisten Position" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Ersatzteil" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Teil 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Teil 2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "verknüpftes Teil auswählen" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "Teil-Beziehung kann nicht zwischen einem Teil und sich selbst erstellt werden" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "Doppelte Beziehung existiert bereits" @@ -6315,83 +6336,83 @@ msgstr "Keine Aktion angegeben" msgid "No matching action found" msgstr "Keine passende Aktion gefunden" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Keine Treffer für Barcode" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Treffer für Barcode gefunden" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "Barcode entspricht einem bereits vorhandenen Artikel" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "Keine passenden Teiledaten gefunden" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "Keine passenden Zulieferteile gefunden" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "Mehrere passende Zulieferteile gefunden" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "Zulieferteil zugeordnet" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "Artikel wurde bereits erhalten" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "Mehrere passende Elemente gefunden" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "Kein passendes Element gefunden" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "Barcode stimmt nicht mit einem vorhandenen Lagerartikel überein" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "Lagerartikel stimmt nicht mit dem Element überein" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "Unzureichender Bestand verfügbar" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "Lagerartikel der Bestellung zugeordnet" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "Nicht genügend Informationen" @@ -6834,7 +6855,7 @@ msgstr "Rand" msgid "Print a border around each label" msgstr "Einen Rahmen um jedes Label drucken" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "Querformat" @@ -7011,17 +7032,17 @@ msgstr "Methode" msgid "No author found" msgstr "Kein Autor gefunden" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "Plugin '{p}' ist nicht kompatibel mit der aktuellen InvenTree Version {v}" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "Plugin benötigt mindestens Version {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "Plugin benötigt maximal Version {v}" @@ -7258,116 +7279,116 @@ msgstr "US-Legal" msgid "Letter" msgstr "US-Letter" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Vorlagen Name" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Dateinamen-Muster" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filter" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "Seitengröße für PDF-Berichte" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "Bericht in Querformat anzeigen" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Breite [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Label-Breite in mm" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Höhe [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Label-Höhe in mm" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Schnipsel" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "Berichts-Snippet" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Snippet-Beschreibung" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Ressource" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "Berichts-Ressource" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "Ressource-Beschreibung" @@ -7449,7 +7470,7 @@ msgstr "Summe" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Seriennummer" @@ -7639,313 +7660,313 @@ msgstr "Das Zulieferteil hat eine Packungsgröße definiert, aber das Kennzeiche msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Seriennummern können für nicht verfolgbare Teile nicht angegeben werden" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "Lagerstandort Typ" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "Lagerstandorte Typen" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "Standardsymbol für alle Orte, die kein Icon gesetzt haben (optional)" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Bestand-Lagerort" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Bestand-Lagerorte" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Besitzer" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Besitzer auswählen" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Lagerartikel können nicht direkt an einen strukturellen Lagerort verlegt werden, können aber an einen untergeordneten Lagerort verlegt werden." -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Extern" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "Dies ist ein externer Lagerort" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "Standorttyp" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "Standortart dieses Standortes" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "Sie können diesen Lagerort nicht als strukturell markieren, da sich bereits Lagerartikel darin befinden!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "Lagerartikel können nicht in strukturelle Lagerorte abgelegt werden!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "Für virtuelle Teile können keine Lagerartikel erstellt werden" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "Artikeltyp ('{self.supplier_part.part}') muss {self.part} sein" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "Anzahl muss für Objekte mit Seriennummer 1 sein" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Seriennummer kann nicht gesetzt werden wenn die Anzahl größer als 1 ist" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "Teil kann nicht zu sich selbst gehören" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "Teil muss eine Referenz haben wenn is_building wahr ist" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "Referenz verweist nicht auf das gleiche Teil" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Eltern-Lagerartikel" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Basis-Teil" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Passendes Zuliefererteil für diesen Lagerartikel auswählen" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Verpackung, in der dieser Lagerartikel gelagert ist" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "verbaut in" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "Ist dieses Teil in einem anderen verbaut?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Seriennummer für dieses Teil" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Losnummer für diesen Lagerartikel" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Bestand" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Quellbau" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Bauauftrag für diesen Lagerartikel" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Verbraucht von" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "Bauauftrag der diesen Lagerartikel verbrauchte" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Quelle Bestellung" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Bestellung für diesen Lagerartikel" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "Ziel-Auftrag" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Ablaufdatum für Lagerartikel. Bestand wird danach als abgelaufen gekennzeichnet" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Löschen wenn leer" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Diesen Lagerartikel löschen wenn der Bestand aufgebraucht ist" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "Preis für eine Einheit bei Einkauf" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "In Teil umgewandelt" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "Teil ist nicht verfolgbar" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "Anzahl muss eine Ganzzahl sein" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Menge darf die verfügbare Lagermenge ({self.quantity}) nicht überschreiten" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "Anzahl stimmt nicht mit den Seriennummern überein" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "Testvorlage existiert nicht" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Artikel wurde einem Kundenauftrag zugewiesen" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Lagerartikel ist in anderem Element verbaut" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "Lagerartikel enthält andere Artikel" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Artikel wurde einem Kunden zugewiesen" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "Lagerartikel wird aktuell produziert" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "Nachverfolgbare Lagerartikel können nicht zusammengeführt werden" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Artikel duplizeren" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Lagerartikel müssen auf dasselbe Teil verweisen" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Lagerartikel müssen auf dasselbe Lieferantenteil verweisen" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "Status-Codes müssen zusammenpassen" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Lagerartikel kann nicht bewegt werden, da kein Bestand vorhanden ist" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Eintrags-Notizen" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Wert muss für diesen Test angegeben werden" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "Anhang muss für diesen Test hochgeladen werden" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Testergebnis" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Test Ausgabe Wert" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Test Ergebnis Anhang" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Test Notizen" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "Teststation" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "Der Bezeichner der Teststation, in der der Test durchgeführt wurde" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "Gestartet" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "Der Zeitstempel des Teststarts" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "Fertiggestellt" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "Der Zeitstempel der Test-Beendigung" @@ -8401,6 +8422,7 @@ msgstr "Es gibt ausstehende Datenbankmigrationen, die Ihre Aufmerksamkeit erford #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Benutzer" msgid "Select which users are assigned to this group" msgstr "Welche Benutzer gehören zu dieser Gruppe" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "Folgende Benutzer gehören zu mehreren Gruppen" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Persöhnliche Informationen" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Berechtigungen" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "wichtige Daten" diff --git a/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po index 90f2d0ffdf..92c81ba579 100644 --- a/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "Το API endpoint δε βρέθηκε" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Δεν έχετε δικαιώματα να το δείτε αυτό" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Δεν ήταν δυνατή η μετατροπή από {original} σε {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Μη έγκυρη ποσότητα" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Η τιμή '{name}' δεν εμφανίζεται σε μορφή μο msgid "Provided value does not match required pattern: " msgstr "Η παρεχόμενη τιμή δεν ταιριάζει με το απαιτούμενο απαραραίητη μοτίβο: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Κενό σειριακό αριθμό συμβολοσειράς" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Διπλότυπο serial number" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Το εύρος της ομάδας {group} υπερβαίνει την επιτρεπόμενη ποσότητα ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Δεν βρέθηκαν σειριακοί αριθμοί" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Ο αριθμός μοναδικών σειριακών αριθμών ({len(serials)}) πρέπει να αντιστοιχεί στην ποσότητα ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Αφαιρέστε τα HTML tags από την τιμή που εισάγατε" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Μη έγκυρη επιλογή" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Όνομα" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Περιγραφή" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Περιγραφή (προαιρετική)" @@ -470,11 +470,11 @@ msgstr "Σφάλμα διακομιστή" msgid "An error has been logged by the server." msgstr "Ένα σφάλμα έχει καταγραφεί από το διακομιστή." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Πρέπει να είναι αριθμός" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Νόμισμα" @@ -522,28 +522,29 @@ msgstr "Η μέση τιμή δεν πρέπει να υπερβαίνει το msgid "Invalid value for overage" msgstr "Μη έγκυρη τιμή για υπέρβαση" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Γονική Κατασκευή" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Εξάρτημα" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Εκδόθηκε από" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Η έκδοση πρέπει να ακυρωθεί πριν διαγραφεί" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Αναλώσιμο" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Προαιρετικό" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Υπό παρακολούθηση" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Κατανεμημένο" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Διαθέσιμο" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Σειρά Κατασκευής" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Δημιουργία Παραγγελιών" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Μη έγκυρη επιλογή για γονική κατασκευή" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Εξάρτημα από εντολή κατασκευής δεν μπορεί να αλλάξει" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Αναφορά Παραγγελίας Κατασκευής" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Αναφορά Παραγγελίας Κατασκευής" msgid "Reference" msgstr "Αναφορά" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Σύντομη περιγραφή της κατασκευής (προαιρετικό)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "BuildOrder στην οποία έχει δοθεί αυτή η κατασκευή" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Επιλέξτε τμήμα για κατασκευή" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Κωδικός Παραγγελίας Πωλήσεων" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "SalesOrder στην οποία έχει διατεθεί αυτό το build" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Τοποθεσία Προέλευσης" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Επιλέξτε τοποθεσία από την οποία θα γίνει απόθεμα, για αυτή την κατασκευή (αφήστε κενό για να πάρετε από οποιαδήποτε θέση αποθήκευσης)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Τοποθεσία Προορισμού" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Επιλέξτε την τοποθεσία όπου θα αποθηκευτούν τα ολοκληρωμένα στοιχεία" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Ποσότητα Κατασκευής" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Αριθμός αντικειμένων για κατασκευή" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Ολοκληρωμένα αντικείμενα" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Αριθμός αντικειμένων αποθέματος που έχουν ολοκληρωθεί" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Κατάσταση Κατασκευής" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Κωδικός κατάστασης κατασκευής" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Κωδικός Παρτίδας" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Κωδικός παρτίδας για αυτήν την κατασκευή" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Ημερομηνία Δημιουργίας" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Ημερομηνία ολοκλήρωσης στόχου" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Ημερομηνία ολοκλήρωσης της κατασκευής. Η κατασκευή θα καθυστερήσει μετά από αυτή την ημερομηνία." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Ημερομηνία ολοκλήρωσης" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "ολοκληρώθηκε από" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Εκδόθηκε από" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Χρήστης που εξέδωσε αυτήν την παραγγελία κατασκευής" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Υπεύθυνος" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Χρήστης ή ομάδα υπεύθυνη για αυτή την εντολή κατασκευής" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Εξωτερικοί σύνδεσμοι" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Σύνδεσμος προς εξωτερική διεύθυνση URL" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Προτεραιότητα Κατασκευής" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Προτεραιότητα αυτής της εντολής κατασκευής" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Κωδικός Έργου" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Κωδικός έργου για αυτήν την εντολή κατασκευής" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Η παραγγελία κατασκευής {build} έχει ολοκληρωθεί" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Δεν καθορίστηκε έξοδος κατασκευής" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Η έξοδος κατασκευής δεν ταιριάζει με την παραγγελία κατασκευής" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Η ποσότητα δεν μπορεί να είναι μεγαλύτερη από την παραγόμενη ποσότητα" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Το προϊόν κατασκευής {serial} δεν έχει περάσει όλες τις απαιτούμενες δοκιμές" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Αντικείμενο κατασκευής" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Αντικείμενο κατασκευής" msgid "Quantity" msgstr "Ποσότητα" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Απαιτούμενη ποσότητα για την εντολή κατασκευής" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Το στοιχείο κατασκευής πρέπει να ορίζει μια έξοδο κατασκευής, καθώς το κύριο τμήμα επισημαίνεται ως ανιχνεύσιμο" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Η καταχωρημένη ποσότητα ({q}) δεν πρέπει να υπερβαίνει τη διαθέσιμη ποσότητα αποθέματος ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Στοιχείο αποθέματος είναι υπερ-κατανεμημένο" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Η ποσότητα πρέπει να είναι 1 για σειριακό απόθεμα" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Το επιλεγμένο στοιχείο αποθέματος δεν ταιριάζει με τη γραμμή ΤΥ" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Στοιχείο Αποθέματος" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Στοιχείο πηγαίου αποθέματος" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Ποσότητα αποθέματος για διάθεση για κατασκευή" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Εγκατάσταση σε" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Αποθήκη προορισμού" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Αυτόματη κατανομή των απαιτούμενων στοιχείων με τους αντίστοιχους σειριακούς αριθμούς" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Οι παρακάτω σειριακοί αριθμοί υπάρχουν ήδη ή δεν είναι έγκυροι" @@ -1107,8 +1109,8 @@ msgstr "Αιτία απόρριψης προϊόντων κατασκευής" msgid "Location for completed build outputs" msgstr "Τοποθεσία για ολοκληρωμένα προϊόντα κατασκευής" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "Ολοκληρώθηκε" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Χρήστης" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Σύνδεσμος" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Συνημμένο" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Όνομα αρχείου" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "Εντολές Πώλησης" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Επιθυμητή Προθεσμία" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Προορισμός" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Αποστάλθηκε" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "Επιστροφή χρημάτων" msgid "Reject" msgstr "Απόρριψη" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po index 12a439cff4..55cb423c21 100644 --- a/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-04-01 22:02+0000\n" +"POT-Creation-Date: 2025-04-07 02:14+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -22,35 +22,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "" @@ -89,7 +89,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "" @@ -106,10 +106,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -125,42 +125,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -405,24 +405,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -471,11 +471,11 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "" @@ -523,28 +523,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -563,166 +564,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -730,205 +732,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -944,56 +946,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1080,7 +1082,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1108,8 +1110,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1296,9 +1298,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1314,7 +1316,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1322,12 +1324,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1390,11 +1392,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1486,8 +1488,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1497,8 +1499,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1520,7 +1522,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1599,8 +1601,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1625,7 +1627,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1676,7 +1678,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1717,7 +1719,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1746,7 +1748,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1815,7 +1817,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1831,7 +1833,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1915,7 +1917,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1939,7 +1941,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1956,7 +1958,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1964,113 +1966,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2410,8 +2412,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2424,7 +2426,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2433,7 +2435,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2441,7 +2443,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2453,7 +2455,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2646,7 +2648,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3345,90 +3347,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3531,7 +3541,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3576,7 +3586,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3673,7 +3683,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3715,7 +3725,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3736,7 +3746,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3768,7 +3778,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3778,15 +3788,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3803,7 +3813,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3979,7 +3989,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4079,7 +4089,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4167,101 +4177,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4269,452 +4279,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4809,7 +4821,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4849,7 +4861,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5006,905 +5018,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6316,83 +6337,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6835,7 +6856,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7012,17 +7033,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7259,116 +7280,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7450,7 +7471,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7640,313 +7661,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8402,6 +8423,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8456,19 +8478,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po index c2eb22c2c8..4e3d35b143 100644 --- a/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Language: es_ES\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "Debe habilitar la autenticación de doble factor antes de continuar." -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "endpoint API no encontrado" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "Lista de artículos o filtros deben ser proporcionados para la operación en bloque" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "Los artículos deben ser proporcionados como una lista" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "Lista de artículos no válida" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Filtros proporcionados inválidos" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "Ningún artículo coincide con el criterio proporcionado" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "El usuario no tiene permiso para ver este modelo" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "No se pudo convertir {original} a {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Cantidad proporcionada no válida" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Número decimal no válido" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "El valor '{name}' no aparece en formato de patrón" msgid "Provided value does not match required pattern: " msgstr "El valor proporcionado no coincide con el patrón requerido: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "No se puede serializar más de 1000 elementos a la vez" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "No se ha proporcionado un número de serie" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Serie duplicada" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Grupo no válido {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Rango del grupo {group} supera la cantidad permitida ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Numeros de serie no encontrados" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Los números de serie únicos ({len(serials)}) debe coincidir con la cantidad ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Eliminar etiquetas HTML de este valor" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "Los datos contienen contenido de marcado prohibido" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Selección no válida" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Nombre" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Descripción" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Descripción (opcional)" @@ -470,11 +470,11 @@ msgstr "Error de servidor" msgid "An error has been logged by the server." msgstr "Se ha registrado un error por el servidor." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Debe ser un número válido" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Moneda" @@ -522,28 +522,29 @@ msgstr "El excedente no debe superar el 100%" msgid "Invalid value for overage" msgstr "Valor no válido para sobrecarga" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Estado del pedido" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Construcción o Armado Superior" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "Incluye Variantes" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "Incluye Variantes" msgid "Part" msgstr "Parte" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Categoría" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Asignado a mí" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Emitido por" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Asignadas a" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "Creado antes" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "Creado despues" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "Tiene fecha inicial" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "Fecha de inicio anterior" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "Fecha de inicio después" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "Tiene fecha límite" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "Fecha objetivo antes" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "Fecha objetivo después" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "Completado antes" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "Completado después" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "Fecha Mínima" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "Fecha Máxima" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "Excluir Árbol" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "La compilación debe cancelarse antes de poder ser eliminada" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Consumible" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Opcional" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Montaje" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Rastreado" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Comprobable" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "Pedido pendiente" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Asignadas" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Disponible" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Construir órden" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Construir órdenes" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "BOM de ensamblado no ha sido validado" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "La orden de construcción no puede ser creado para una parte inactiva" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "La orden de construcción no puede ser creada para una parte desbloqueada" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Opción no válida para la construcción padre" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Se debe especificar un usuario o grupo responsable" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "La parte del pedido de construcción no puede ser modificada" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "La fecha límite debe ser posterior a la fecha de inicio" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Número de orden de construcción o armado" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Número de orden de construcción o armado" msgid "Reference" msgstr "Referencia" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Breve descripción de la construcción (opcional)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Orden de Construcción o Armado a la que se asigna" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Seleccionar parte a construir o armar" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Referencia de orden de venta" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Orden de Venta a la que se asigna" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Ubicación de la fuente" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Seleccione la ubicación de donde tomar stock para esta construcción o armado (deje en blanco para tomar desde cualquier ubicación)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Ubicación de destino" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Seleccione la ubicación donde se almacenarán los artículos completados" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Cantidad a crear" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Número de objetos existentes a construir" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Elementos completados" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Número de productos en stock que se han completado" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Estado de la construcción" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Código de estado de construcción" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Numero de lote" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Número de lote de este producto final" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Fecha de Creación" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "Crear fecha de inicio" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "Fecha de inicio programada para este pedido" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Fecha límite de finalización" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Fecha límite para la finalización de la construcción. La construcción estará vencida después de esta fecha." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Fecha de finalización" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "terminado por" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Emitido por" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "El usuario que emitió esta orden" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Responsable" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Usuario o grupo responsable de esta orden de construcción" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Link externo" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Enlace a URL externa" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Prioridad de construcción" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Prioridad de esta orden de construcción" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Código del proyecto" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Código de proyecto para esta orden de ensamble" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "No se pudo descargar la tarea para completar las asignaciones de construcción" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "El pedido {build} ha sido procesado" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Pedido #[order] ha sido procesado" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Los números de serie deben ser proporcionados para las partes rastreables" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "No se ha especificado salida de construcción" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "La construcción de la salida ya está completa" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "La salida de la construcción no coincide con el orden de construcción" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "La cantidad debe ser mayor que cero" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "La cantidad no puede ser mayor que la cantidad de salida" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "La construcción {serial} no ha pasado todas las pruebas requeridas" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Construir línea de pedido" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Ensamblar equipo" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Ensamblar equipo" msgid "Quantity" msgstr "Cantidad" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Cantidad requerida para orden de ensamble" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Item de construcción o armado debe especificar un resultado o salida, ya que la parte maestra está marcada como rastreable" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Cantidad asignada ({q}) no debe exceder la cantidad disponible de stock ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Artículo de stock sobreasignado" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Cantidad asignada debe ser mayor que cero" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "La cantidad debe ser 1 para el stock serializado" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "El artículo de almacén selelccionado no coincide con la línea BOM" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Artículo de stock" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Producto original de stock" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Cantidad de stock a asignar para construir" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Instalar en" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Artículo de stock de destino" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Asignar automáticamente los artículos requeridos con números de serie coincidentes" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Los siguientes números seriales ya existen o son inválidos" @@ -1107,8 +1109,8 @@ msgstr "Razón para descartar la salida de ensamble(s)" msgid "Location for completed build outputs" msgstr "Ubicación para las salidas de construcción completadas" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "Nombre de parte la BOM" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Parte del proveedor" @@ -1313,7 +1315,7 @@ msgstr "Referencia de orden de Ensamblado" msgid "Part Category Name" msgstr "Nombre de la categoría por pieza" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Rastreable" @@ -1321,12 +1323,12 @@ msgstr "Rastreable" msgid "Inherited" msgstr "Heredado" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Permitir variantes" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Item de Lista de Materiales" @@ -1389,11 +1391,11 @@ msgstr "Terminado" msgid "Stock required for build order" msgstr "Stock requerido para la orden de construcción" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Orden de construcción atrasada" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "El pedido de construcción {bo} está atrasado" @@ -1485,8 +1487,8 @@ msgstr "Cadena de clave debe ser única" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Usuario" msgid "Price break quantity" msgstr "Cantidad de salto de precio" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Precio" @@ -1519,7 +1521,7 @@ msgstr "Nombre para este webhook" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Activo" @@ -1598,8 +1600,8 @@ msgstr "Título" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Enlace" @@ -1624,7 +1626,7 @@ msgstr "Leer" msgid "Was this news item read?" msgstr "¿Esta noticia ya fue leída?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Definición" msgid "Unit definition" msgstr "Definición de unidad" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Archivo adjunto" @@ -1716,7 +1718,7 @@ msgstr "Tamaño del archivo" msgid "File size in bytes" msgstr "Tamaño del archivo en bytes" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "Tipo de modelo no válido especificado para el archivo adjunto" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Valor" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "Lista de selección" @@ -1830,7 +1832,7 @@ msgstr "Nombre de la lista de selección" msgid "Description of the selection list" msgstr "Descripción de la lista de selección" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "Bloqueado" @@ -1914,7 +1916,7 @@ msgstr "¿Está activa esta entrada de la lista de selección?" msgid "Barcode Scan" msgstr "Escanear código de barras" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Datos" @@ -1938,7 +1940,7 @@ msgstr "Fecha y hora del escaneo de código de barras" msgid "URL endpoint which processed the barcode" msgstr "Dispositivo URL que procesó el código de barras" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Contexto" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "Respuesta de datos del escaneo de código de barras" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Resultado" @@ -1963,113 +1965,113 @@ msgstr "Resultado" msgid "Was the barcode scan successful?" msgstr "¿El escaneo de código de barras fue exitoso?" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Nuevo {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Se ha creado un nuevo pedido y se le ha asignado" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} cancelado" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Artículos Recibidos" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Los artículos han sido recibidos contra una orden de compra" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "Los artículos han sido recibidos contra una orden de devolución" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Error generado por el complemento" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Está en ejecución" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Tareas pendientes" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Tareas Programadas" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Tareas fallidas" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "Identificación de Tarea" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Identificación de tarea única" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Bloquear" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Bloquear hora" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Nombre de la tarea" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Función" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Nombre de la Función" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Argumentos" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Argumentos de la tarea" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Argumentos de palabra clave" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Argumentos de palabra clave de tarea" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Nombre de Archivo" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "El usuario no tiene permiso para crear o editar archivos adjuntos para este modelo" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "Lista de selección bloqueada" @@ -2409,8 +2411,8 @@ msgstr "Copiar plantillas de parámetros de categoría" msgid "Copy category parameter templates when creating a part" msgstr "Copiar plantillas de parámetros de categoría al crear una parte" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Plantilla" @@ -2423,7 +2425,7 @@ msgstr "Las partes son plantillas por defecto" msgid "Parts can be assembled from other components by default" msgstr "Las partes pueden ser ensambladas desde otros componentes por defecto" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Componente" @@ -2432,7 +2434,7 @@ msgstr "Componente" msgid "Parts can be used as sub-components by default" msgstr "Las partes pueden ser usadas como subcomponentes por defecto" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Comprable" @@ -2440,7 +2442,7 @@ msgstr "Comprable" msgid "Parts are purchaseable by default" msgstr "Las partes son comprables por defecto" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Vendible" @@ -2452,7 +2454,7 @@ msgstr "Las partes se pueden vender por defecto" msgid "Parts are trackable by default" msgstr "Las partes son rastreables por defecto" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtual" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "Registrar errores ocurridos al generar reportes" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Tamaño de página" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "Las consultas de búsqueda devuelven resultados para palabras enteras coincidentes" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Mostrar cantidad en formularios" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Mostrar la cantidad de partes disponibles en algunos formularios" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Formularios de cierre de teclas de escape" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Usa la clave de escape para cerrar formularios modales" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Barra de navegación fija" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "La posición de la barra de navegación se fija en la parte superior de la pantalla" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Formato de Fecha" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Formato preferido para mostrar fechas" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Planificación de partes" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Longitud del texto en las tablas" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Longitud máxima para textos en tablas" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Recibir reportes de error" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "Recibir notificación de errores del sistema" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "Últimas impresoras usadas" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "Teléfono de contacto" msgid "Contact email address" msgstr "Correo electrónico de contacto" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Contacto" @@ -3575,7 +3585,7 @@ msgstr "¿Esta empresa fabrica partes?" msgid "Default currency used for this company" msgstr "Moneda predeterminada utilizada para esta empresa" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Dirección" @@ -3672,7 +3682,7 @@ msgstr "Enlace a información de dirección (externa)" msgid "Manufacturer Part" msgstr "Parte del fabricante" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Parte base" @@ -3714,7 +3724,7 @@ msgstr "Nombre del parámetro" msgid "Parameter value" msgstr "Valor del parámetro" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Unidades" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "La parte vinculada del fabricante debe hacer referencia a la misma parte base" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Descripción de la parte del proveedor" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Descripción de la parte del proveedor" msgid "Note" msgstr "Nota" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "costo base" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Cargo mínimo (p. ej., cuota de almacenamiento)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Paquetes" @@ -3802,7 +3812,7 @@ msgstr "Cantidad de paquete" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Cantidad total suministrada en un solo paquete. Dejar vacío para artículos individuales." -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "múltiple" @@ -3978,7 +3988,7 @@ msgstr "Datos de la fila original" msgid "Errors" msgstr "Errores" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Válido" @@ -4078,7 +4088,7 @@ msgstr "Número de copias a imprimir para cada etiqueta" msgid "Connected" msgstr "Conectado" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Desconocido" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "Tipo de configuración" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Referencia del pedido" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "Destacado" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "Tiene Código de Proyecto" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Creado por" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "Creado antes de" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "Creado después de" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "Tiene fecha inicial" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "Fecha de inicio anterior" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "Fecha de inicio después" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "Tiene fecha límite" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "Fecha objetivo antes" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "Fecha objetivo después" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "Tiene Precio" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "Completado antes de" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "Completado después de" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Orden" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "Orden completada" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Componente interno" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "Orden pendiente" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Completados" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "Tiene envío" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Orden de compra" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Orden de compra" msgid "Sales Order" msgstr "Orden de Venta" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Orden de devolución" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Precio Total" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "Precio total para este pedido" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Moneda de pedido" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "Moneda para este pedido (dejar en blanco para utilizar el valor predeterminado de la empresa)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "Este pedido está bloqueado y no puede ser modificado" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "El contacto no coincide con la empresa seleccionada" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "La fecha de inicio debe ser anterior a la fecha de límite" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Descripción del pedido (opcional)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Seleccione el código del proyecto para este pedido" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Enlace a Url externa" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "Fecha de inicio" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "Fecha de inicio programada para este pedido" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Fecha objetivo" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Fecha esperada para la entrega del pedido. El pedido se retrasará después de esta fecha." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Fecha de emisión" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Fecha de expedición del pedido" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Usuario o grupo responsable de este pedido" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "Punto de contacto para este pedido" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "Dirección de la empresa para este pedido" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Referencia del pedido" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Estado de la orden de compra" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Empresa de la cual se están encargando los artículos" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Referencia del proveedor" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Código de referencia de pedido del proveedor" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "recibido por" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "La fecha de pedido fue completada" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Destinación" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "Destino para los artículos recibidos" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "El proveedor de la parte debe coincidir con el proveedor de PO" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "La cantidad debe ser un número positivo" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Cliente" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Empresa a la que se venden los artículos" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "Estado de la orden de venta" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Referencia del cliente " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Código de referencia de pedido del cliente" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Fecha de envío" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "enviado por" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "La orden ya fue completada" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "La orden ya fue cancelada" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Sólo una orden abierta puede ser marcada como completa" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "El pedido no se puede completar porque hay envíos incompletos" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "El pedido no se puede completar ya que hay asignaciones incompletas" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "El pedido no se puede completar porque hay partidas incompletas" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "Este pedido está bloqueado y no puede ser modificado" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Cantidad del artículo" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Referencia de partida" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Notas de partida" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Fecha objetivo para esta partida (dejar en blanco para usar la fecha de destino de la orden)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Descripción de partida (opcional)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Contexto adicional para esta línea" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Precio unitario" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "La parte del proveedor debe coincidir con el proveedor" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Parte del proveedor" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Recibido" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Número de artículos recibidos" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Precio de Compra" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Precio de compra unitario" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Una parte virtual no puede ser asignada a un pedido de venta" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Sólo las partes vendibles pueden ser asignadas a un pedido de venta" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Precio de Venta" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Precio de venta unitario" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Enviado" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Cantidad enviada" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Fecha del envío" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Fecha de entrega" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "Fecha de entrega del envío" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Revisado por" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Usuario que revisó este envío" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Envío" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Número de envío" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Número de Seguimiento" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Información de seguimiento del envío" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Número de factura" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Número de referencia para la factura asociada" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "El envío ya ha sido enviado" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "El envío no tiene artículos de stock asignados" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "El artículo de stock no ha sido asignado" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "No se puede asignar el artículo de stock a una línea con una parte diferente" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "No se puede asignar stock a una línea sin una parte" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "La cantidad de asignación no puede exceder la cantidad de stock" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "La cantidad debe ser 1 para el stock serializado" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "La orden de venta no coincide con el envío" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "El envío no coincide con el pedido de venta" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Línea" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Referencia del envío del pedido de venta" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Ítem" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Seleccionar artículo de stock para asignar" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Especificar la cantidad de asignación de stock" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "Referencia de la orden de devolución" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "Empresa de la cual se están devolviendo los artículos" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Estado de la orden de devolución" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Seleccionar el artículo a devolver del cliente" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Fecha de recepción" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "La fecha en la que se recibió este artículo de devolución" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Resultado" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "Salida para esta partida" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "Costo asociado con la devolución o reparación para esta partida" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "SKU" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Número de parte interna" @@ -4848,7 +4860,7 @@ msgstr "Seleccione la ubicación de destino para los artículos recibidos" msgid "Enter batch code for incoming stock items" msgstr "Introduzca el código de lote para los artículos de almacén entrantes" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Fecha de Expiración" @@ -5005,905 +5017,914 @@ msgstr "Reembolso" msgid "Reject" msgstr "Rechazo" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Orden de compra atrasada" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "La orden de compra {po} está atrasada" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Orden de venta atrasada" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "La orden de venta {so} está atrasada" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "Favoritos" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "Profundidad" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "Filtrar por profundidad de categoría" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "Nivel superior" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "Filtrar por categorías de nivel superior" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "En cascada" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "Tiene resultados" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Orden de compra entrante" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "Orden de venta saliente" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Validación de Lista de Materiales" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Esta opción debe ser seleccionada" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Categoría de parte" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Categorías de parte" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Ubicación Predeterminada" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Ubicación predeterminada para partes de esta categoría" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Estructural" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Las partes no pueden asignarse directamente a una categoría estructural, pero pueden asignarse a categorías hijas." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Palabras clave predeterminadas" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Palabras clave por defecto para partes en esta categoría" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Icono" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Icono (opcional)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "¡No puedes hacer que esta categoría de partes sea estructural porque algunas partes ya están asignadas!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Partes" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Opción no válida para la parte principal" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Ya existe un artículo de almacén con este número de serie" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN duplicado no permitido en la configuración de partes" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "La revisión de parte duplicada ya existe." -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Parte con este nombre, IPN y revisión ya existe." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "¡No se pueden asignar partes a las categorías de partes estructurales!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Nombre de la parte" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Es plantilla" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "¿Es esta parte una parte de la plantilla?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "¿Es esta parte una variante de otra parte?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Variante de" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "Descripción de parte (opcional)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Palabras claves" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Palabras clave para mejorar la visibilidad en los resultados de búsqueda" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Categoría de parte" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Revisión de parte o número de versión" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Revisión" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "¿Es esta parte una variante de otra parte?" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "Variante de" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "¿Dónde se almacena este artículo normalmente?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Proveedor por defecto" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Parte de proveedor predeterminada" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Expiración por defecto" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Tiempo de expiración (en días) para los artículos de stock de esta parte" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Stock mínimo" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Nivel mínimo de stock permitido" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Unidades de medida para esta parte" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "¿Se puede construir esta parte a partir de otras partes?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "¿Se puede utilizar esta parte para construir otras partes?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "¿Esta parte tiene seguimiento de objetos únicos?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "¿Se puede comprar esta parte a proveedores externos?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "¿Se puede vender esta parte a los clientes?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "¿Está activa esta parte?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "Las partes bloqueadas no pueden ser editadas" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "¿Es ésta una parte virtual, como un producto de software o una licencia?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Suma de verificación de BOM" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Suma de verificación de BOM almacenada" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "BOM comprobado por" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "Fecha BOM comprobada" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Creación de Usuario" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "Dueño responsable de esta parte" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Último inventario" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Vender múltiples" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "Moneda utilizada para almacenar en caché los cálculos de precios" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Costo mínimo de BOM" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "Costo mínimo de partes de componentes" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Costo máximo de BOM" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "Costo máximo de partes de componentes" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Costo mínimo de compra" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "Costo histórico mínimo de compra" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Costo máximo de compra" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "Costo histórico máximo de compra" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "Precio interno mínimo" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "Costo mínimo basado en precios reducidos internos" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "Precio interno máximo" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "Costo máximo basado en precios reducidos internos" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "Precio mínimo de proveedor" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "Precio mínimo de la parte de proveedores externos" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "Precio máximo de proveedor" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "Precio máximo de la parte de proveedores externos" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Costo mínimo de variante" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "Costo mínimo calculado de las partes variantes" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Costo máximo de variante" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "Costo máximo calculado de las partes variantes" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Costo mínimo" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "Anular el costo mínimo" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Costo máximo" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "Reemplazar coste máximo" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "Costo mínimo general calculado" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "Precio de venta mínimo" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "Precio de venta mínimo basado en precios reducidos" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "Precio de venta máximo" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "Precio de venta máximo basado en precios reducidos" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Costo de venta mínimo" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "Precio de venta mínimo histórico" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Costo de Venta Máximo" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "Precio de venta máximo histórico" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Número de artículos" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Fecha" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Notas adicionales" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Costo de Stock Mínimo" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "Costo mínimo estimado del stock disponible" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Informe" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Número de partes" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "Las plantillas de prueba solo pueden ser creadas para partes de prueba" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Nombre de prueba" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Introduzca un nombre para la prueba" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Descripción de prueba" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Introduce la descripción para esta prueba" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Habilitado" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Requerido" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "¿Es necesario pasar esta prueba?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Requiere valor" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "¿Esta prueba requiere un valor al agregar un resultado de la prueba?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Adjunto obligatorio" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "¿Esta prueba requiere un archivo adjunto al agregar un resultado de la prueba?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Opciones" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "El nombre de parámetro en la plantilla tiene que ser único" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Nombre de Parámetro" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "Casilla de verificación" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "¿Es este parámetro una casilla de verificación?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "Opciones válidas para este parámetro (separados por comas)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "Lista de selección para este parámetro" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "Opción inválida para el valor del parámetro" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Parte principal" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Plantilla de parámetro" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Valor del parámetro" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Valor predeterminado" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Valor de parámetro por defecto" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Seleccionar parte principal" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Sub parte" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Seleccionar parte a utilizar en BOM" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "Cantidad del artículo en BOM" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Este artículo BOM es opcional" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Este artículo de BOM es consumible (no está rastreado en órdenes de construcción)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Exceso" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Cantidad estimada de desperdicio de construcción (absoluta o porcentaje)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Referencia de artículo de BOM" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Notas del artículo de BOM" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Suma de verificación" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "Suma de verificación de línea de BOM" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Validado" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "Este artículo de BOM ha sido validado" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Este artículo BOM es heredado por BOMs para partes variantes" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Artículos de stock para partes variantes pueden ser usados para este artículo BOM" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "La cantidad debe ser un valor entero para las partes rastreables" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "Debe especificar la subparte" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "Ítem de BOM sustituto" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "La parte sustituta no puede ser la misma que la parte principal" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Artículo BOM superior" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Sustituir parte" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Parte 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Parte 2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Seleccionar parte relacionada" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "Nota para esta relación" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "No se especificó ninguna acción" msgid "No matching action found" msgstr "No se encontró ninguna acción coincidente" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "No se encontró ninguna coincidencia para los datos del código de barras" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Coincidencia encontrada para datos de códigos de barras" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "El código de barras coincide con artículo existente" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "No se ha encontrado ningún complemento para datos de código de barras" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "Ningún pedido de venta proporcionado" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "Método" msgid "No author found" msgstr "No se encontró autor" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "El complemento '{p}' no es compatible con la versión actual de InvenTree {v}" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "El complemento requiere al menos la versión {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "El complemento requiere como máximo la versión {v}" @@ -7258,116 +7279,116 @@ msgstr "Legal" msgid "Letter" msgstr "Carta" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Nombre de la plantilla" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "Adjuntar al modelo al imprimir" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "Guardar la salida del informe como un archivo adjunto contra la instancia del modelo enlazado al imprimir" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Patrón de Nombre de archivo" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filtros" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "Tamaño de página para reportes PDF" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Ancho [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Ancho de la etiqueta, especificado en mm" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Altura [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Altura de la etiqueta, especificada en mm" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Fragmento" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "Archivo fragmento de informe" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Descripción de archivo de fragmento" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Activo" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "Reportar archivo de activos" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "Descripción del archivo de activos" @@ -7449,7 +7470,7 @@ msgstr "Total" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Número de serie" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Ubicación de Stock" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Ubicaciones de Stock" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Propietario" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Seleccionar Propietario" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Externo" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "Se debe especificar la pieza" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "La cantidad debe ser 1 para el artículo con un número de serie" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Número de serie no se puede establecer si la cantidad es mayor que 1" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "El objeto no puede pertenecer a sí mismo" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "El artículo debe tener una referencia de construcción si is_building=True" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "La referencia de la construcción no apunta al mismo objeto de parte" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Artículo de stock padre" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Parte base" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Seleccione una parte del proveedor correspondiente para este artículo de stock" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "¿Dónde se encuentra este artículo de stock?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Empaquetar este artículo de stock se almacena en" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Instalado en" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "¿Está este artículo instalado en otro artículo?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Número de serie para este artículo" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Código de lote para este artículo de stock" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Cantidad de Stock" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Build de origen" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Build para este item de stock" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Consumido por" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Orden de compra de origen" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Orden de compra para este artículo de stock" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "Orden de venta de destino" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Fecha de caducidad del artículo de stock. El stock se considerará caducado después de esta fecha" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Eliminar al agotar" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Eliminar este artículo de stock cuando se agoten las existencias" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "Precio de compra único en el momento de la compra" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "Convertido a parte" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "La parte no está establecida como rastreable" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "Cantidad debe ser un entero" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "Los números de serie deben ser proporcionados como una lista" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "La cantidad no coincide con los números de serie" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Artículo de stock ha sido asignado a un pedido de venta" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Artículo de stock está instalado en otro artículo" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "Artículo de stock contiene otros artículos" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Artículo de stock ha sido asignado a un cliente" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "El artículo de stock está en producción" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "Stock serializado no puede ser combinado" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Artículos de Stock Duplicados" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Los artículos de stock deben referirse a la misma parte" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Los artículos de stock deben referirse a la misma parte del proveedor" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "Los códigos de estado del stock deben coincidir" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stock no se puede mover porque no está en stock" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Notas de entrada" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Debe proporcionarse un valor para esta prueba" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "El archivo adjunto debe ser subido para esta prueba" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Resultado de la prueba" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Valor de salida de prueba" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Adjunto de resultados de prueba" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Notas de prueba" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "Finalizó" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Usuarios" msgid "Select which users are assigned to this group" msgstr "Seleccione qué usuarios están asignados a este grupo" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Información personal" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Permisos" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Fechas importantes" diff --git a/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po index dbaacf04f8..6d3f740df0 100644 --- a/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Spanish, Mexico\n" "Language: es_MX\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "endpoint API no encontrado" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "Lista de artículos inválida" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Filtros proporcionados inválidos" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "El usuario no tiene permiso para ver este modelo" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "No se pudo convertir {original} a {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Cantidad proporcionada no válida" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Número decimal inválido" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "El valor '{name}' no aparece en formato de patrón" msgid "Provided value does not match required pattern: " msgstr "El valor proporcionado no coincide con el patrón requerido: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "No se puede serializar más de 1000 artículos a la vez" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "No se ha proporcionado un número de serie" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Serie duplicada" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Grupo inválido: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Rango del grupo {group} supera la cantidad permitida ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Numeros de serie no encontrados" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Los números de serie únicos ({len(serials)}) debe coincidir con la cantidad ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Eliminar etiquetas HTML de este valor" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "Los datos contienen contenido de markdown prohibido" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Selección no válida" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Nombre" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Descripción" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Descripción (opcional)" @@ -470,11 +470,11 @@ msgstr "Error de servidor" msgid "An error has been logged by the server." msgstr "Se ha registrado un error por el servidor." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Debe ser un número válido" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Moneda" @@ -522,28 +522,29 @@ msgstr "El excedente no debe superar el 100%" msgid "Invalid value for overage" msgstr "Valor no válido para sobrecarga" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Estado del pedido" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Construcción o Armado Superior" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "Incluye Variantes" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "Incluye Variantes" msgid "Part" msgstr "Parte" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Categoría" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Construir antepasado" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Asignado a mí" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Emitido por" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Asignadas a" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "Creado antes de" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "Creado después de" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "Fecha objetivo antes de" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "Fecha objetivo después de" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "Completado antes de" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "Completado después de" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "La compilación debe cancelarse antes de poder ser eliminada" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Consumible" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Opcional" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Montaje" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Rastreado" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Comprobable" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "Pedido pendiente" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Asignadas" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Disponible" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Construir órden" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Construir órdenes" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "BOM de ensamblado no ha sido validado" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "La orden de construcción no puede ser creado para una parte inactiva" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "La orden de construcción no puede ser creada para una parte desbloqueada" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Opción no válida para la construcción padre" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Se debe especificar un usuario o grupo responsable" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "La parte del pedido de construcción no puede ser modificada" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Número de orden de construcción o armado" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Número de orden de construcción o armado" msgid "Reference" msgstr "Referencia" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Breve descripción de la construcción (opcional)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Orden de Construcción o Armado a la que se asigna" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Seleccionar parte a construir o armar" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Referencia de orden de venta" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Orden de Venta a la que se asigna" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Ubicación de la fuente" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Seleccione la ubicación de donde tomar stock para esta construcción o armado (deje en blanco para tomar desde cualquier ubicación)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Ubicación de destino" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Seleccione la ubicación donde se almacenarán los artículos completados" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Cantidad a crear" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Número de objetos existentes a construir" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Elementos completados" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Número de productos en stock que se han completado" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Estado de la construcción" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Código de estado de construcción" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Numero de lote" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Número de lote de este producto final" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Fecha de Creación" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Fecha límite de finalización" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Fecha límite para la finalización de la construcción. La construcción estará vencida después de esta fecha." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Fecha de finalización" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "terminado por" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Emitido por" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "El usuario que emitió esta orden" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Responsable" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Usuario o grupo responsable de esta orden de construcción" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Link externo" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Enlace a URL externa" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Prioridad de construcción" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Prioridad de esta orden de construcción" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Código del proyecto" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Código de proyecto para esta orden de ensamble" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "No se pudo descargar la tarea para completar las asignaciones de construcción" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "El pedido {build} ha sido procesado" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Pedido #[order] ha sido procesado" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Los números de serie deben ser proporcionados para las partes rastreables" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "No se ha especificado salida de construcción" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "La construcción de la salida ya está completa" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "La salida de la construcción no coincide con el orden de construcción" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "La cantidad debe ser mayor que cero" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "La cantidad no puede ser mayor que la cantidad de salida" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "La construcción {serial} no ha pasado todas las pruebas requeridas" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Construir línea de pedido" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Ensamblar equipo" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Ensamblar equipo" msgid "Quantity" msgstr "Cantidad" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Cantidad requerida para orden de ensamble" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Item de construcción o armado debe especificar un resultado o salida, ya que la parte maestra está marcada como rastreable" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Cantidad asignada ({q}) no debe exceder la cantidad disponible de stock ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Artículo de stock sobreasignado" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Cantidad asignada debe ser mayor que cero" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "La cantidad debe ser 1 para el stock serializado" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "El artículo de almacén selelccionado no coincide con la línea BOM" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Artículo de stock" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Producto original de stock" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Cantidad de stock a asignar para construir" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Instalar en" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Artículo de stock de destino" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Asignar automáticamente los artículos requeridos con números de serie coincidentes" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Los siguientes números seriales ya existen o son inválidos" @@ -1107,8 +1109,8 @@ msgstr "Razón para descartar la salida de ensamble(s)" msgid "Location for completed build outputs" msgstr "Ubicación para las salidas de construcción completadas" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "Nombre de parte la BOM" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Parte del proveedor" @@ -1313,7 +1315,7 @@ msgstr "Referencia de orden de Ensamblado" msgid "Part Category Name" msgstr "Nombre de la categoría por pieza" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Rastreable" @@ -1321,12 +1323,12 @@ msgstr "Rastreable" msgid "Inherited" msgstr "Heredado" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Permitir variantes" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Item de Lista de Materiales" @@ -1389,11 +1391,11 @@ msgstr "Terminado" msgid "Stock required for build order" msgstr "Stock requerido para la orden de construcción" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Orden de construcción atrasada" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "El pedido de construcción {bo} está atrasado" @@ -1485,8 +1487,8 @@ msgstr "Cadena de clave debe ser única" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Usuario" msgid "Price break quantity" msgstr "Cantidad de salto de precio" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Precio" @@ -1519,7 +1521,7 @@ msgstr "Nombre para este webhook" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Activo" @@ -1598,8 +1600,8 @@ msgstr "Título" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Enlace" @@ -1624,7 +1626,7 @@ msgstr "Leer" msgid "Was this news item read?" msgstr "¿Esta noticia ya fue leída?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Definición" msgid "Unit definition" msgstr "Definición de unidad" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Archivo adjunto" @@ -1716,7 +1718,7 @@ msgstr "Tamaño del archivo" msgid "File size in bytes" msgstr "Tamaño del archivo en bytes" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "Tipo de modelo no válido especificado para el archivo adjunto" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "Clave lógica del estado que es igual a este estado personalizado en la lógica de negocios" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Valor" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "Lista de selección" @@ -1830,7 +1832,7 @@ msgstr "Nombre de la lista de selección" msgid "Description of the selection list" msgstr "Descripción de la lista de selección" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "Bloqueado" @@ -1914,7 +1916,7 @@ msgstr "¿Está activa esta entrada de la lista de selección?" msgid "Barcode Scan" msgstr "Escanear código de barras" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Datos" @@ -1938,7 +1940,7 @@ msgstr "Fecha y hora del escaneo de código de barras" msgid "URL endpoint which processed the barcode" msgstr "Dispositivo URL que procesó el código de barras" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Contexto" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "Respuesta de datos del escaneo de código de barras" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Resultado" @@ -1963,113 +1965,113 @@ msgstr "Resultado" msgid "Was the barcode scan successful?" msgstr "¿El escaneo de código de barras fue exitoso?" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Nuevo {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Se ha creado un nuevo pedido y se le ha asignado" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} cancelado" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Artículos Recibidos" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Los artículos han sido recibidos contra una orden de compra" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "Los artículos han sido recibidos contra una orden de devolución" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Error generado por el complemento" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Está en ejecución" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Tareas pendientes" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Tareas Programadas" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Tareas fallidas" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "Identificación de Tarea" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Identificación de tarea única" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Bloquear" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Bloquear hora" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Nombre de la tarea" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Función" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Nombre de la Función" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Argumentos" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Argumentos de la tarea" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Argumentos de palabra clave" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Argumentos de palabra clave de tarea" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Nombre de Archivo" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "Lista de selección bloqueada" @@ -2409,8 +2411,8 @@ msgstr "Copiar plantillas de parámetros de categoría" msgid "Copy category parameter templates when creating a part" msgstr "Copiar plantillas de parámetros de categoría al crear una parte" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Plantilla" @@ -2423,7 +2425,7 @@ msgstr "Las partes son plantillas por defecto" msgid "Parts can be assembled from other components by default" msgstr "Las partes pueden ser ensambladas desde otros componentes por defecto" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Componente" @@ -2432,7 +2434,7 @@ msgstr "Componente" msgid "Parts can be used as sub-components by default" msgstr "Las partes pueden ser usadas como subcomponentes por defecto" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Comprable" @@ -2440,7 +2442,7 @@ msgstr "Comprable" msgid "Parts are purchaseable by default" msgstr "Las partes son comprables por defecto" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Vendible" @@ -2452,7 +2454,7 @@ msgstr "Las partes se pueden vender por defecto" msgid "Parts are trackable by default" msgstr "Las partes son rastreables por defecto" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtual" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "Registrar errores ocurridos al generar reportes" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Tamaño de página" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "Las consultas de búsqueda devuelven resultados para palabras enteras coincidentes" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Mostrar cantidad en formularios" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Mostrar la cantidad de partes disponibles en algunos formularios" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Formularios de cierre de teclas de escape" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Usa la clave de escape para cerrar formularios modales" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Barra de navegación fija" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "La posición de la barra de navegación se fija en la parte superior de la pantalla" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" -msgstr "" +msgstr "Iconos de navegación" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Formato de Fecha" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Formato preferido para mostrar fechas" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Planificación de partes" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Longitud del texto en las tablas" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Longitud máxima para textos en tablas" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Recibir reportes de error" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "Recibir notificación de errores del sistema" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "Últimas impresoras usadas" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "Teléfono de contacto" msgid "Contact email address" msgstr "Correo electrónico de contacto" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Contacto" @@ -3575,7 +3585,7 @@ msgstr "¿Esta empresa fabrica partes?" msgid "Default currency used for this company" msgstr "Moneda predeterminada utilizada para esta empresa" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Dirección" @@ -3672,7 +3682,7 @@ msgstr "Enlace a información de dirección (externa)" msgid "Manufacturer Part" msgstr "Parte del fabricante" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Parte base" @@ -3714,7 +3724,7 @@ msgstr "Nombre del parámetro" msgid "Parameter value" msgstr "Valor del parámetro" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Unidades" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "La parte vinculada del fabricante debe hacer referencia a la misma parte base" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Descripción de la parte del proveedor" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Descripción de la parte del proveedor" msgid "Note" msgstr "Nota" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "costo base" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Cargo mínimo (p. ej., cuota de almacenamiento)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Paquetes" @@ -3802,7 +3812,7 @@ msgstr "Cantidad de paquete" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Cantidad total suministrada en un solo paquete. Dejar vacío para artículos individuales." -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "múltiple" @@ -3978,7 +3988,7 @@ msgstr "Datos de la fila original" msgid "Errors" msgstr "Errores" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Válido" @@ -4078,7 +4088,7 @@ msgstr "Número de copias a imprimir para cada etiqueta" msgid "Connected" msgstr "Conectado" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Desconocido" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Referencia del pedido" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "Destacado" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "Tiene Código de Proyecto" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Creado por" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "Creado antes de" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "Creado después de" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "Fecha objetivo antes de" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "Fecha objetivo después de" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "Tiene Precio" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "Completado antes de" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "Completado después de" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Orden" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "Orden completada" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Componente interno" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "Orden pendiente" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Completados" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "Tiene envío" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Orden de compra" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Orden de compra" msgid "Sales Order" msgstr "Orden de Venta" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Orden de devolución" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Precio Total" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "Precio total para este pedido" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Moneda de pedido" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "Moneda para este pedido (dejar en blanco para utilizar el valor predeterminado de la empresa)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "El contacto no coincide con la empresa seleccionada" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Descripción del pedido (opcional)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Seleccione el código del proyecto para este pedido" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Enlace a Url externa" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Fecha objetivo" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Fecha esperada para la entrega del pedido. El pedido se retrasará después de esta fecha." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Fecha de emisión" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Fecha de expedición del pedido" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Usuario o grupo responsable de este pedido" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "Punto de contacto para este pedido" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "Dirección de la empresa para este pedido" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Referencia del pedido" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Estado de la orden de compra" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Empresa de la cual se están encargando los artículos" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Referencia del proveedor" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Código de referencia de pedido del proveedor" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "recibido por" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "La fecha de pedido fue completada" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Destinación" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "Destino para los artículos recibidos" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "El proveedor de la parte debe coincidir con el proveedor de PO" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "La cantidad debe ser un número positivo" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Cliente" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Empresa a la que se venden los artículos" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "Estado de la orden de venta" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Referencia del cliente " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Código de referencia de pedido del cliente" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Fecha de envío" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "enviado por" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "La orden ya fue completada" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "La orden ya fue cancelada" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Sólo una orden abierta puede ser marcada como completa" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "El pedido no se puede completar porque hay envíos incompletos" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "El pedido no se puede completar ya que hay asignaciones incompletas" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "El pedido no se puede completar porque hay partidas incompletas" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Cantidad del artículo" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Referencia de partida" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Notas de partida" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Fecha objetivo para esta partida (dejar en blanco para usar la fecha de destino de la orden)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Descripción de partida (opcional)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Contexto adicional para esta línea" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Precio unitario" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "La parte del proveedor debe coincidir con el proveedor" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Parte del proveedor" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Recibido" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Número de artículos recibidos" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Precio de Compra" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Precio de compra unitario" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Una parte virtual no puede ser asignada a un pedido de venta" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Sólo las partes vendibles pueden ser asignadas a un pedido de venta" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Precio de Venta" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Precio de venta unitario" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Enviado" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Cantidad enviada" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Fecha del envío" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Fecha de entrega" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "Fecha de entrega del envío" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Revisado por" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Usuario que revisó este envío" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Envío" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Número de envío" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Número de Seguimiento" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Información de seguimiento del envío" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Número de factura" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Número de referencia para la factura asociada" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "El envío ya ha sido enviado" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "El envío no tiene artículos de stock asignados" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "El artículo de stock no ha sido asignado" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "No se puede asignar el artículo de stock a una línea con una parte diferente" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "No se puede asignar stock a una línea sin una parte" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "La cantidad de asignación no puede exceder la cantidad de stock" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "La cantidad debe ser 1 para el stock serializado" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "La orden de venta no coincide con el envío" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "El envío no coincide con el pedido de venta" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Línea" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Referencia del envío del pedido de venta" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Ítem" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Seleccionar artículo de stock para asignar" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Especificar la cantidad de asignación de stock" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "Referencia de la orden de devolución" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "Empresa de la cual se están devolviendo los artículos" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Estado de la orden de devolución" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "El artículo de almacén debe ser especificado" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "La cantidad de retorno excede la cantidad de existencias" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "La cantidad de retorno debe ser mayor que cero" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "Cantidad inválida para el artículo de stock serializado" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Seleccionar el artículo a devolver del cliente" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Fecha de recepción" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "La fecha en la que se recibió este artículo de devolución" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Resultado" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "Salida para esta partida" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "Costo asociado con la devolución o reparación para esta partida" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "SKU" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Número de parte interna" @@ -4848,7 +4860,7 @@ msgstr "Seleccione la ubicación de destino para los artículos recibidos" msgid "Enter batch code for incoming stock items" msgstr "Introduzca el código de lote para los artículos de almacén entrantes" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Fecha de Expiración" @@ -5005,905 +5017,914 @@ msgstr "Reembolso" msgid "Reject" msgstr "Rechazo" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Orden de compra atrasada" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "La orden de compra {po} está atrasada" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Orden de venta atrasada" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "La orden de venta {so} está atrasada" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "Favoritos" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "Profundidad" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "Filtrar por profundidad de categoría" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "Nivel superior" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "Filtrar por categorías de nivel superior" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "En cascada" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "Tiene resultados" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Orden de compra entrante" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "Orden de venta saliente" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Validación de Lista de Materiales" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Esta opción debe ser seleccionada" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Categoría de parte" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Categorías de parte" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Ubicación Predeterminada" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Ubicación predeterminada para partes de esta categoría" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Estructural" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Las partes no pueden asignarse directamente a una categoría estructural, pero pueden asignarse a categorías hijas." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Palabras clave predeterminadas" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Palabras clave por defecto para partes en esta categoría" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Icono" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Icono (opcional)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "¡No puedes hacer que esta categoría de partes sea estructural porque algunas partes ya están asignadas!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Partes" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Opción no válida para la parte principal" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Ya existe un artículo de almacén con este número de serie" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN duplicado no permitido en la configuración de partes" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "La revisión de parte duplicada ya existe." -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Parte con este nombre, IPN y revisión ya existe." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "¡No se pueden asignar partes a las categorías de partes estructurales!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Nombre de la parte" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Es plantilla" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "¿Es esta parte una parte de la plantilla?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "¿Es esta parte una variante de otra parte?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Variante de" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "Descripción de parte (opcional)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Palabras claves" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Palabras clave para mejorar la visibilidad en los resultados de búsqueda" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Categoría de parte" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Revisión de parte o número de versión" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Revisión" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "¿Es esta parte una variante de otra parte?" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "Variante de" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "¿Dónde se almacena este artículo normalmente?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Proveedor por defecto" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Parte de proveedor predeterminada" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Expiración por defecto" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Tiempo de expiración (en días) para los artículos de stock de esta parte" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Stock mínimo" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Nivel mínimo de stock permitido" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Unidades de medida para esta parte" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "¿Se puede construir esta parte a partir de otras partes?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "¿Se puede utilizar esta parte para construir otras partes?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "¿Esta parte tiene seguimiento de objetos únicos?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "¿Se puede comprar esta parte a proveedores externos?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "¿Se puede vender esta parte a los clientes?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "¿Está activa esta parte?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "Las partes bloqueadas no pueden ser editadas" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "¿Es ésta una parte virtual, como un producto de software o una licencia?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Suma de verificación de BOM" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Suma de verificación de BOM almacenada" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "BOM comprobado por" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "Fecha BOM comprobada" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Creación de Usuario" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "Dueño responsable de esta parte" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Último inventario" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Vender múltiples" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "Moneda utilizada para almacenar en caché los cálculos de precios" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Costo mínimo de BOM" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "Costo mínimo de partes de componentes" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Costo máximo de BOM" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "Costo máximo de partes de componentes" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Costo mínimo de compra" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "Costo histórico mínimo de compra" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Costo máximo de compra" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "Costo histórico máximo de compra" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "Precio interno mínimo" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "Costo mínimo basado en precios reducidos internos" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "Precio interno máximo" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "Costo máximo basado en precios reducidos internos" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "Precio mínimo de proveedor" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "Precio mínimo de la parte de proveedores externos" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "Precio máximo de proveedor" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "Precio máximo de la parte de proveedores externos" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Costo mínimo de variante" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "Costo mínimo calculado de las partes variantes" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Costo máximo de variante" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "Costo máximo calculado de las partes variantes" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Costo mínimo" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "Anular el costo mínimo" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Costo máximo" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "Reemplazar coste máximo" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "Costo mínimo general calculado" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "Precio de venta mínimo" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "Precio de venta mínimo basado en precios reducidos" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "Precio de venta máximo" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "Precio de venta máximo basado en precios reducidos" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Costo de venta mínimo" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "Precio de venta mínimo histórico" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Costo de Venta Máximo" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "Precio de venta máximo histórico" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Número de artículos" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Fecha" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Notas adicionales" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Costo de Stock Mínimo" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "Costo mínimo estimado del stock disponible" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Informe" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Número de partes" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "Las plantillas de prueba solo pueden ser creadas para partes de prueba" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Nombre de prueba" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Introduzca un nombre para la prueba" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Descripción de prueba" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Introduce la descripción para esta prueba" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Habilitado" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Requerido" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "¿Es necesario pasar esta prueba?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Requiere valor" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "¿Esta prueba requiere un valor al agregar un resultado de la prueba?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Adjunto obligatorio" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "¿Esta prueba requiere un archivo adjunto al agregar un resultado de la prueba?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Opciones" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "El nombre de parámetro en la plantilla tiene que ser único" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Nombre de Parámetro" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "Casilla de verificación" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "¿Es este parámetro una casilla de verificación?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "Opciones válidas para este parámetro (separados por comas)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "Lista de selección para este parámetro" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "Opción inválida para el valor del parámetro" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Parte principal" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Plantilla de parámetro" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Valor del parámetro" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Valor predeterminado" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Valor de parámetro por defecto" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Seleccionar parte principal" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Sub parte" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Seleccionar parte a utilizar en BOM" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "Cantidad del artículo en BOM" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Este artículo BOM es opcional" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Este artículo de BOM es consumible (no está rastreado en órdenes de construcción)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Exceso" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Cantidad estimada de desperdicio de construcción (absoluta o porcentaje)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Referencia de artículo de BOM" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Notas del artículo de BOM" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Suma de verificación" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "Suma de verificación de línea de BOM" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Validado" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "Este artículo de BOM ha sido validado" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Este artículo BOM es heredado por BOMs para partes variantes" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Artículos de stock para partes variantes pueden ser usados para este artículo BOM" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "La cantidad debe ser un valor entero para las partes rastreables" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "Debe especificar la subparte" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "Ítem de BOM sustituto" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "La parte sustituta no puede ser la misma que la parte principal" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Artículo BOM superior" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Sustituir parte" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Parte 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Parte 2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Seleccionar parte relacionada" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "Nota para esta relación" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "No se especificó ninguna acción" msgid "No matching action found" msgstr "No se encontró ninguna acción coincidente" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "No se encontró ninguna coincidencia para los datos del código de barras" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Coincidencia encontrada para datos de códigos de barras" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "El código de barras coincide con artículo existente" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "No se ha encontrado ningún complemento para datos de código de barras" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "Ningún complemento coincide con el código de barras del proveedor" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "Ningún pedido de venta proporcionado" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "Método" msgid "No author found" msgstr "No se encontró autor" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "El complemento '{p}' no es compatible con la versión actual de InvenTree {v}" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "El complemento requiere al menos la versión {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "El complemento requiere como máximo la versión {v}" @@ -7258,116 +7279,116 @@ msgstr "Legal" msgid "Letter" msgstr "Carta" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Nombre de la plantilla" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "Adjuntar al modelo al imprimir" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "Guardar la salida del informe como un archivo adjunto contra la instancia del modelo enlazado al imprimir" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Patrón de Nombre de archivo" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filtros" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "Tamaño de página para reportes PDF" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Ancho [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Ancho de la etiqueta, especificado en mm" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Altura [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Altura de la etiqueta, especificada en mm" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Fragmento" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "Archivo fragmento de informe" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Descripción de archivo de fragmento" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Activo" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "Reportar archivo de activos" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "Descripción del archivo de activos" @@ -7449,7 +7470,7 @@ msgstr "Total" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Número de serie" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Ubicación de Stock" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Ubicaciones de Stock" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Propietario" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Seleccionar Propietario" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Externo" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "Se debe especificar la pieza" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "La cantidad debe ser 1 para el artículo con un número de serie" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Número de serie no se puede establecer si la cantidad es mayor que 1" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "El objeto no puede pertenecer a sí mismo" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "El artículo debe tener una referencia de construcción si is_building=True" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "La referencia de la construcción no apunta al mismo objeto de parte" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Artículo de stock padre" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Parte base" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Seleccione una parte del proveedor correspondiente para este artículo de stock" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "¿Dónde se encuentra este artículo de stock?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Empaquetar este artículo de stock se almacena en" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Instalado en" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "¿Está este artículo instalado en otro artículo?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Número de serie para este artículo" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Código de lote para este artículo de stock" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Cantidad de Stock" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Build de origen" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Build para este item de stock" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Consumido por" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Orden de compra de origen" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Orden de compra para este artículo de stock" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "Orden de venta de destino" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Fecha de caducidad del artículo de stock. El stock se considerará caducado después de esta fecha" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Eliminar al agotar" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Eliminar este artículo de stock cuando se agoten las existencias" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "Precio de compra único en el momento de la compra" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "Convertido a parte" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "La parte no está establecida como rastreable" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "Cantidad debe ser un entero" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "Los números de serie deben ser proporcionados como una lista" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "La cantidad no coincide con los números de serie" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Artículo de stock ha sido asignado a un pedido de venta" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Artículo de stock está instalado en otro artículo" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "Artículo de stock contiene otros artículos" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Artículo de stock ha sido asignado a un cliente" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "El artículo de stock está en producción" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "Stock serializado no puede ser combinado" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Artículos de Stock Duplicados" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Los artículos de stock deben referirse a la misma parte" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Los artículos de stock deben referirse a la misma parte del proveedor" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "Los códigos de estado del stock deben coincidir" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stock no se puede mover porque no está en stock" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Notas de entrada" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Debe proporcionarse un valor para esta prueba" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "El archivo adjunto debe ser subido para esta prueba" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Resultado de la prueba" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Valor de salida de prueba" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Adjunto de resultados de prueba" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Notas de prueba" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "Finalizó" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Usuarios" msgid "Select which users are assigned to this group" msgstr "Seleccione qué usuarios están asignados a este grupo" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Información personal" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Permisos" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Fechas importantes" diff --git a/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po index f5d569ac66..dea8a4c22c 100644 --- a/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:41\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Estonian\n" "Language: et_EE\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Teil ei ole selle lehe vaatamiseks luba" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Vigane valik" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Nimi" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Kirjeldus" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Kirjeldus (valikuline)" @@ -470,11 +470,11 @@ msgstr "Serveri viga" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Valuuta" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Osa" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Määratud" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Valikuline" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Jälgitud" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Saadaval" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "Tootekood" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Koostamise olek" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Loomise kuupäev" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "Kogus" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Jälgitav" @@ -1321,12 +1323,12 @@ msgstr "Jälgitav" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "Valmis" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "Pealkiri" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Link" @@ -1624,7 +1626,7 @@ msgstr "Loetud" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Definitsioon" msgid "Unit definition" msgstr "Ühiku definitsioon" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Manus" @@ -1716,7 +1718,7 @@ msgstr "Faili suurus" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Andmed" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Kontekst" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Tulemus" @@ -1963,113 +1965,113 @@ msgstr "Tulemus" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Ülesande nimi" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Funktsioon" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Funktsiooni nimi" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Argumendid" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Ülesande argumendid" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Failinimi" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "Mudeli liik" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Mall" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Komponent" @@ -2432,7 +2434,7 @@ msgstr "Komponent" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Ostetav" @@ -2440,7 +2442,7 @@ msgstr "Ostetav" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtuaalne" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Lehe suurus" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "Kontakttelefoni number" msgid "Contact email address" msgstr "Kontakt e-postiaadress" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Aadress" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "Märkus" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Müügihind" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Saadetud" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Saadetis" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Rida" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "Tootekood" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "Tagasimakse" msgid "Reject" msgstr "Keeldu" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "Sügavus" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Osa kategooria" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Osa kategooriad" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Ikoon" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Ikoon (valikuline)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Osad" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Osa nimi" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "On mall" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Märksõnad" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Osa kategooria" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Minimaalne laoseis" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "Testimalle saab luua ainult testitavate osade jaoks" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "Piirjoon" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "Meetod" msgid "No author found" msgstr "Autorit ei leitud" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "Lisa mudelile printimisel" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "Salvesta aruande väljund manusega seotud mudeli eksemplari juurde printimisel" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filtrid" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "Mallifaili" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Seerianumber" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Testitulemused" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Kasutajad" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Isiklik info" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Õigused" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Olulised kuupäevad" diff --git a/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po index 790d298007..6113bc2025 100644 --- a/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Persian\n" "Language: fa_IR\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "قبل از انجام هر کار دیگری باید احراز هویت دو مرحله ای را فعال کنید." -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "Address e API peida nashod" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "لیست اقلام یا فیلترها باید برای عملیات انبوه ارائه شود" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "موارد باید به صورت لیست ارائه شود" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "لیست موارد نامعتبر ارائه شده است" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "فیلترها باید به صورت دستوری ارائه شوند" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "فیلترهای نامعتبر ارائه شده است" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "هیچ موردی با معیارهای ارائه شده مطابقت ندارد" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "کاربر سطح دسترسی نمایش این مدل را ندارد" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "نمی‌توان {original} را به {unit} تبدیل کرد" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "مقدار ارائه شده نامعتبر است" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "مقدار اعشاری نامعتبر است" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "مقدار '{name}' در قالب الگو ظاهر قرار نمی گی msgid "Provided value does not match required pattern: " msgstr "مقدار ارائه شده با الگوی مورد نیاز مطابقت ندارد: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "نمی توان بیش از 1000 مورد را به طور همزمان سریال کرد" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "رشته شماره سریال خالی" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "سریال تکراری" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "گروه نامعتبر: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "محدوده گروه {group} از مقدار مجاز بیشتر است ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "هیچ شماره سریالی پیدا نشد" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "تعداد شماره های سریال منحصر به فرد ({len(serials)}) باید با مقدار ({expected_quantity}) مطابقت داشته باشد" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "برچسب های HTML را از این مقدار حذف کنید" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "داده ها حاوی محتوای علامت گذاری ممنوع است" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "انتخاب نامعتبر" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "نام" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "توضیحات" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "توضیحات (اختیاری)" @@ -470,11 +470,11 @@ msgstr "خطای سرور" msgid "An error has been logged by the server." msgstr "یک خطا توسط سرور ثبت شده است." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "باید یک عدد معتبر باشد" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "ارز" @@ -522,28 +522,29 @@ msgstr "ارزش اضافه نباید از 100٪ تجاوز کند" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "مرجع سفارش فروش" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "منبع محل" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "مقصد" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "هیچ عملیات کاربر-محوری، مشخص نشده است" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po index 9a9877d04d..e39f39b11b 100644 --- a/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Finnish\n" "Language: fi_FI\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API-rajapintaa ei löydy" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Käyttäjän oikeudet eivät riitä kohteen tarkastelemiseen" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Annettu määrä on virheellinen" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Tyhjä sarjanumero" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Duplikaatti sarjanumero" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Sarjanumeroita ei löytynyt" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Virheellinen valinta" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Nimi" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Kuvaus" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Kuvaus (valinnainen)" @@ -470,11 +470,11 @@ msgstr "Palvelinvirhe" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Täytyy olla kelvollinen luku" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Valuutta" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Osa" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Kategoria" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Saatavilla" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Ulkoinen linkki" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Linkki ulkoiseen URLiin" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "Määrä" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Varastotuote" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Seurattavissa" @@ -1321,12 +1323,12 @@ msgstr "Seurattavissa" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "Valmis" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Käyttäjä" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Hinta" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktiivinen" @@ -1598,8 +1600,8 @@ msgstr "Otsikko" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Linkki" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Liite" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Arvo" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Uusi {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Tiedostonimi" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Komponentti" @@ -2432,7 +2434,7 @@ msgstr "Komponentti" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Ostettavissa" @@ -2440,7 +2442,7 @@ msgstr "Ostettavissa" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Sivun koko" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Kontakti" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Osoite" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "Muistiinpano" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Valmis" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Hinta yhteensä" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Tilauksen valuutta" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Tilauksen viite" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Asiakas" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Asiakkaan viite " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Vastaanotettu" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Lähetetty" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Seurantakoodi" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Laskunumero" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Oletus avainsanat" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Kuvake" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Kuvake (valinnainen)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Avainsanat" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Päivämäärä" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Muut merkinnät" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Raportti" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Käytössä" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Suodattimet" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Leveys [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Korkeus [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Sarjanumero" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Käyttäjät" msgid "Select which users are assigned to this group" msgstr "Valitse mitkä käyttäjät on määritetty tähän ryhmään" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Henkilökohtaiset tiedot" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Oikeudet" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po index 083ac9385e..4aee00d1d1 100644 --- a/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "Point de terminaison de l'API introuvable" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Filtres fournis invalides" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "L'utilisateur n'a pas la permission de voir ce modèle" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Impossible de convertir {original} en {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Quantité fournie invalide" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Valeur décimale invalide" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "La valeur '{name}' n'apparaît pas dans le format du modèle" msgid "Provided value does not match required pattern: " msgstr "La valeur fournie ne correspond pas au modèle requis : " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Chaîne de numéro de série vide" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Numéro de série en doublon" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Groupe invalide : {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "La plage de groupe {group} dépasse la quantité autorisée ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Aucun numéro de série trouvé" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Le nombre de numéros de série uniques ({len(serials)}) doit correspondre à la quantité ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Retirer les balises HTML de cette valeur" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Choix invalide" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Nom" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Description" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Description (facultative)" @@ -470,11 +470,11 @@ msgstr "Erreur serveur" msgid "An error has been logged by the server." msgstr "Une erreur a été loguée par le serveur." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Doit être un nombre valide" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Devise" @@ -522,28 +522,29 @@ msgstr "Le surplus ne doit pas dépasser 100%" msgid "Invalid value for overage" msgstr "Valeur invalide pour le dépassement" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Statut de la commande" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Fabrication parente" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "Inclure les variantes" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "Inclure les variantes" msgid "Part" msgstr "Pièce" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Catégorie" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Version Précédente" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Attribué à moi" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Émis par" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Attribué à" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "Créé avant" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "Créé après" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "La construction doit être annulée avant de pouvoir être supprimée" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Consommable" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Facultatif" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Assemblage" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Suivi" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Testable" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Allouée" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Disponible" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Ordre de Fabrication" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Ordres de Fabrication" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "La liste des composants de l'assemblage n'a pas été validée" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Choix invalide pour la fabrication parente" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Un utilisateur ou un groupe responsable doit être spécifié" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "La pièce de commande de construction ne peut pas être changée" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Référence de l' Ordre de Fabrication" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Référence de l' Ordre de Fabrication" msgid "Reference" msgstr "Référence" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Brève description de la fabrication (optionnel)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "BuildOrder associé a cette fabrication" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Sélectionnez la pièce à construire" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Bon de commande de référence" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Commande de vente à laquelle cette construction est allouée" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Emplacement d'origine" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Sélectionner l'emplacement à partir duquel le stock doit être pris pour cette construction (laisser vide pour prendre à partir de n'importe quel emplacement de stock)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Emplacement cible" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Sélectionnez l'emplacement où les éléments complétés seront stockés" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Quantité a fabriquer" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Nombre de stock items à construire" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Articles terminés" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Nombre d'articles de stock qui ont été terminés" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "État de la construction" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Code de statut de construction" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Code de lot" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Code de lot pour ce build output" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Date de création" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Date d'achèvement cible" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Date cible pour l'achèvement de la construction. La construction sera en retard après cette date." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Date d'achèvement" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "achevé par" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Émis par" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Utilisateur ayant émis cette commande de construction" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Responsable" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Utilisateur ou groupe responsable de cet ordre de construction" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Lien Externe" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Lien vers une url externe" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Priorité de fabrication" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Priorité de cet ordre de fabrication" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Code du projet" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Code de projet pour cet ordre de construction" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Échec du déchargement de la tâche pour terminer les allocations de construction" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "La commande de construction {build} a été effectuée" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Une commande de construction a été effectuée" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Les numéros de série doivent être fournis pour les pièces traçables" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Pas d'ordre de production défini" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "L'ordre de production a déjà été réalisé" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "L'ordre de production de correspond pas à l'ordre de commande" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "La quantité doit être supérieure à zéro" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "La quantité ne peut pas être supérieure à la quantité de sortie" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "La sortie de compilation {serial} n'a pas réussi tous les tests requis" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Création de l'objet" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Création de l'objet" msgid "Quantity" msgstr "Quantité" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Quantité requise pour la commande de construction" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "L'élément de construction doit spécifier une sortie de construction, la pièce maîtresse étant marquée comme objet traçable" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "La quantité allouée ({q}) ne doit pas excéder la quantité disponible ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "L'article de stock est suralloué" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "La quantité allouée doit être supérieure à zéro" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "La quantité doit être de 1 pour stock sérialisé" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "L'article de stock sélectionné ne correspond pas à la ligne BOM" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Article en stock" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Stock d'origine de l'article" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Quantité de stock à allouer à la construction" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Installer dans" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Stock de destination de l'article" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Affecter automatiquement les éléments requis avec les numéros de série correspondants" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Les numéros de série suivants existent déjà, ou sont invalides" @@ -1107,8 +1109,8 @@ msgstr "Motif de l'élimination des produits de construction(s)" msgid "Location for completed build outputs" msgstr "Emplacement des ordres de production achevés" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Pièce fournisseur" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Traçable" @@ -1321,12 +1323,12 @@ msgstr "Traçable" msgid "Inherited" msgstr "Reçu de quelqu'un" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Autoriser les variantes" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Article du BOM" @@ -1389,11 +1391,11 @@ msgstr "Terminé" msgid "Stock required for build order" msgstr "Stock requis pour la commande de construction" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Ordre de commande en retard" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "L'ordre de commande {bo} est maintenant en retard" @@ -1485,8 +1487,8 @@ msgstr "La chaîne de caractères constituant la clé doit être unique" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Utilisateur" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Prix" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Actif" @@ -1598,8 +1600,8 @@ msgstr "Titre" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Lien" @@ -1624,7 +1626,7 @@ msgstr "Lu" msgid "Was this news item read?" msgstr "Cette nouvelle a-t-elle été lue ?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Définition" msgid "Unit definition" msgstr "Définition de l'unité" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Pièce jointe" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Valeur" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "Analyse du code-barres" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Données" @@ -1938,7 +1940,7 @@ msgstr "Date et heure du scan de code-barres" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Contexte" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Résultat" @@ -1963,113 +1965,113 @@ msgstr "Résultat" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Nouveau {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Une nouvelle commande a été créée et vous a été assignée" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} annulé" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "Une commande qui vous est assignée a été annulée" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Articles reçus" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Des articles d'un bon de commande ont été reçus" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Erreur déclenchée par le plugin" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "En cours d'exécution" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Tâches en attente" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Tâches planifiées" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Tâches échouées" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "ID de la tâche" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "ID unique de la tâche" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Verrouillé" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Heure verrouillé" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Nom de la tâche" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Fonction" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Nom de la fonction" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Arguments" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Arguments tâche" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Mots-clés Arguments" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Mots-clés arguments tâche" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Nom du fichier" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "Copier les templates de paramètres de catégorie" msgid "Copy category parameter templates when creating a part" msgstr "Copier les templates de paramètres de la catégorie lors de la création d'une pièce" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Modèle" @@ -2423,7 +2425,7 @@ msgstr "Les pièces sont des templates par défaut" msgid "Parts can be assembled from other components by default" msgstr "Les pièces peuvent être assemblées à partir d'autres composants par défaut" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Composant" @@ -2432,7 +2434,7 @@ msgstr "Composant" msgid "Parts can be used as sub-components by default" msgstr "Les pièces peuvent être utilisées comme sous-composants par défaut" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Achetable" @@ -2440,7 +2442,7 @@ msgstr "Achetable" msgid "Parts are purchaseable by default" msgstr "Les pièces sont achetables par défaut" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Vendable" @@ -2452,7 +2454,7 @@ msgstr "Les pièces sont vendables par défaut" msgid "Parts are trackable by default" msgstr "Les pièces sont traçables par défaut" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtuelle" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Taille de la page" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Afficher la quantité dans les formulaires" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Afficher la quantité disponible dans certains formulaires" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "La touche Echap ferme les formulaires" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Utilisez la touche Echap pour fermer les formulaires modaux" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Barre de navigation fixe" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "La position de la barre de navigation est fixée en haut de l'écran" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Format de date" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Format préféré pour l'affichage des dates" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Planification des pièces" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Afficher les informations de planification des pièces" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Inventaire des pièces" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Longueur de la chaîne dans les Tableau" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Longueur maximale des chaînes affichées dans les tableaux" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Recevoir des rapports d'erreur" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "Numéro de téléphone de contact" msgid "Contact email address" msgstr "Adresse e-mail de contact" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Contact" @@ -3575,7 +3585,7 @@ msgstr "Cette entreprise fabrique-t-elle des pièces?" msgid "Default currency used for this company" msgstr "Devise par défaut utilisée pour cette entreprise" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Adresse" @@ -3672,7 +3682,7 @@ msgstr "Lien vers les informations de l'adresse (externe)" msgid "Manufacturer Part" msgstr "Pièces du fabricant" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Pièce de base" @@ -3714,7 +3724,7 @@ msgstr "Nom du paramètre" msgid "Parameter value" msgstr "Valeur du paramètre" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Unités" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "La pièce du fabricant liée doit faire référence à la même pièce de base" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Description de la pièce du fournisseur" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Description de la pièce du fournisseur" msgid "Note" msgstr "Note" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "coût de base" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Frais minimums (par exemple frais de stock)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Conditionnement" @@ -3802,7 +3812,7 @@ msgstr "Nombre de paquet" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "plusieurs" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "Erreurs" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Valide" @@ -4078,7 +4088,7 @@ msgstr "Nombre de copies à imprimer pour chaque étiquette" msgid "Connected" msgstr "Connecté" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Inconnu" @@ -4166,101 +4176,101 @@ msgstr "Configuration de la machine" msgid "Config type" msgstr "Type de configuration" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Référence de commande" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Créé par" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "Possède un Tarif" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Commande" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "Commande Complétée" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Pièces Internes" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "Commande En Attente" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Terminé" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Commande d’achat" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Commande d’achat" msgid "Sales Order" msgstr "Commandes" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Retour de commande" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Prix Total" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "Prix total pour cette commande" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Devise de la commande" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Description de la commande (facultatif)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Lien vers une page externe" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Date Cible" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Date prévue pour la livraison de la commande. La commande sera en retard après cette date." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Date d'émission" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Date d'émission de la commande" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Utilisateur ou groupe responsable de cette commande" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "Adresse de l'entreprise pour cette commande" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Référence de la commande" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Statut de la commande d'achat" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Société de laquelle les articles sont commandés" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Référence du fournisseur" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Code de référence de la commande fournisseur" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "reçu par" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "Date à laquelle la commande a été complété" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Destination" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "La quantité doit être un nombre positif" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Client" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Société à laquelle les articles sont vendus" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Référence client " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Nom de l’expédition" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "expédié par" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "La commande ne peut pas être terminée car il y a des envois incomplets" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Nombre d'élement" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Prix unitaire" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Pièce fournisseur" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Reçu" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Nombre d'éléments reçus" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Prix d'achat" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Prix d'achat unitaire" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "La pièce virtuelle ne peut pas être affectée à une commande" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Seules les pièces vendues peuvent être attribuées à une commande" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Prix de vente" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Prix de vente unitaire" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Expédié" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Quantité expédiée" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Date d'expédition" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Date de Livraison" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Vérifié par" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Utilisateur qui a vérifié cet envoi" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Envoi" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Numéro d'expédition" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "N° de suivi" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Information de suivi des colis" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "N° de facture" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Numéro de référence de la facture associée" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "Le colis a déjà été envoyé" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "L'expédition n'a pas d'articles en stock alloués" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "L'article de stock n'a pas été assigné" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Impossible d'allouer l'article en stock à une ligne avec une autre pièce" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "Impossible d'allouer le stock à une ligne sans pièce" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "La quantité d'allocation ne peut pas excéder la quantité en stock" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Ligne" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Article" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Statut du retour de commande" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Date d'expiration" @@ -5005,905 +5017,914 @@ msgstr "Remboursement" msgid "Reject" msgstr "Refuser" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "Profondeur" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "Premier niveau" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "Cascade" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "Utilise" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Catégorie de composant" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Catégories de composants" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Emplacement par défaut" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Structurel" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Mots-clés par défaut" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Icône" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Icône (facultatif)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Pièces" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "L'IPN doit correspondre au modèle de regex {pattern}" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Il existe déjà un article en stock avec ce numéro de série" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN dupliqué non autorisé dans les paramètres de la pièce" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Une pièce avec ce nom, IPN et révision existe déjà." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Nom de l'article" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Variante de" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Mots-clés" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Catégorie de la pièce" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Révision" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Stock Minimum" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Est-ce que cette pièce est active ?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Création Utilisateur" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "Propriétaire responsable de cette pièce" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Ventes multiples" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Coût minimal" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Coût maximal" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Coût minimum de vente" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Date" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Notes additionnelles" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Nom de test" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Activé" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Requis" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Valeur requise" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Valeur par Défaut" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Surplus" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Validée" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "Aucune action spécifiée" msgid "No matching action found" msgstr "Aucune action correspondante trouvée" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Aucune correspondance trouvée pour les données du code-barres" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Correspondance trouvée pour les données du code-barres" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Nom du modèle" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Modèle de nom de fichier" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filtres" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Largeur [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Largeur de l'étiquette, spécifiée en mm" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Hauteur [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Hauteur de l'étiquette, spécifiée en mm" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Extrait " -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Elément" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Numéro de série" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Propriétaire" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Sélectionner un propriétaire" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "La quantité doit être de 1 pour un article avec un numéro de série" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Le numéro de série ne peut pas être défini si la quantité est supérieure à 1" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Pièce de base" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Installé dans" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "L'article a été installé dans un autre article ?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Numéro de série pour cet article" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Quantité en stock" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Consommé par" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Bon de commande source" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Supprimer lors de l'épuisement" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "La quantité doit être un nombre entier" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "La quantité ne doit pas dépasser la quantité disponible en stock ({self.quantity})" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "La quantité ne correspond pas au nombre de numéros de série" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "Le modèle de test n'existe pas" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "L'article de stock est actuellement en production" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Résultat du test" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Valeur de sortie du test" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Pièce jointe au résultat du test" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Notes de test" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "Station de test" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "L'identifiant de la station de test où le test a été effectué" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "Commencé" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Utilisateurs" msgid "Select which users are assigned to this group" msgstr "Sélectionner quels utilisateurs sont assignés à ce groupe" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Informations personnelles" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Droits" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Dates importantes" diff --git a/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po index 1867113e75..16699d95c7 100644 --- a/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Language: he_IL\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "למשתמש אין הרשאה לצפות במוזל הזה" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "מספרים סידוריים לא נמצאו" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "בחירה שגויה" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "שם" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "תיאור" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "תיאור (לא חובה)" @@ -470,11 +470,11 @@ msgstr "שגיאת שרת" msgid "An error has been logged by the server." msgstr "נרשמה שגיאה על ידי השרת." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "המספר חייב להיות תקין" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "מטבע" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "מקור הבנייה" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "רכיב" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "מקט" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "בחר רכיב לבנייה" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "כמות בניה" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "קישור חיצוני" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "כמות" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "הושלם" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "משתמש" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "קישור" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "קובץ מצורף" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "שם קובץ" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "נשלח" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "לא פורטה הפעולה" msgid "No matching action found" msgstr "פעולה מבוקשת לא נמצאה" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po index d2b00722a9..000eb6b1e3 100644 --- a/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Hindi\n" "Language: hi_IN\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po index c21195c1da..a67ce5dea0 100644 --- a/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API funkciót nem találom" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Érvénytelen szűrők vannak megadva" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Nincs jogosultságod az adatok megtekintéséhez" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "{original} átváltása {unit}-ra sikertelen" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Nem megfelelő mennyiség" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Érvénytelen decimális érték" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "A(z) '{name}' érték nem a szükséges minta szerinti" msgid "Provided value does not match required pattern: " msgstr "A megadott érték nem felel meg a szükséges mintának: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Üres sorozatszám" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Duplikált sorozatszám" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Érvénytelen csoport: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Csoport tartomány {group} több mint az engedélyezett ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nem található sorozatszám" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Az egyedi sorozatszámok számának ({len(serials)}) meg kell egyeznie a mennyiséggel ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "HTML tag-ek eltávolítása ebből az értékből" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Érvénytelen választás" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Név" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Leírás" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Leírás (opcionális)" @@ -470,11 +470,11 @@ msgstr "Kiszolgálóhiba" msgid "An error has been logged by the server." msgstr "A kiszolgáló egy hibaüzenetet rögzített." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Érvényes számnak kell lennie" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Pénznem" @@ -522,28 +522,29 @@ msgstr "Túlszállítás nem lehet több mint 100%" msgid "Invalid value for overage" msgstr "Érvénytelen érték a túlszállításra" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Rendelés állapota" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Szülő gyártás" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "Változatokkal együtt" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "Változatokkal együtt" msgid "Part" msgstr "Alkatrész" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Kategória" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Szülő Gyártás" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Hozzám rendelt" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Kiállította" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Hozzárendelve" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "Ez előtt létrehozva" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "Fa kihagyása" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "A gyártást be kell fejezni a törlés előtt" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Fogyóeszköz" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Opcionális" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Gyártmány" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Követett" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Ellenőrizhető" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Lefoglalva" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Elérhető" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Gyártási utasítás" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Gyártási utasítások" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Az alkatrészjegyzék még nincs jóváhagyva" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "Nem lehet inaktív alkatrészre Gyártást kezdeményezni" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "Nem lehet lezáratlan alkatrészre Gyártást kezdeményezni" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Hibás választás a szülő gyártásra" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Meg kell adni felelős felhasználót vagy csoportot" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Gyártási rendelés alkatrész nem változtatható" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Gyártási utasítás azonosító" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Gyártási utasítás azonosító" msgid "Reference" msgstr "Azonosító" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Gyártás rövid leírása (opcionális)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Válassz alkatrészt a gyártáshoz" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Vevői rendelés azonosító" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Vevői rendelés amihez ez a gyártás hozzá van rendelve" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Forrás hely" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Válassz helyet ahonnan készletet vegyünk el ehhez a gyártáshoz (hagyd üresen ha bárhonnan)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Cél hely" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Válassz helyet ahol a kész tételek tárolva lesznek" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Gyártási mennyiség" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Gyártandó készlet tételek száma" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Kész tételek" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Elkészült készlet tételek száma" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Gyártási állapot" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Gyártás státusz kód" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Batch kód" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Batch kód a gyártás kimenetéhez" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Létrehozás dátuma" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Befejezés cél dátuma" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Cél dátum a gyártás befejezéséhez. Ez után késettnek számít majd." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Befejezés dátuma" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "elkészítette" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Indította" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Felhasználó aki ezt a gyártási utasítást kiállította" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Felelős" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Felhasználó vagy csoport aki felelős ezért a gyártásért" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Külső link" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Link külső URL-re" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Priorítás" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Gyártási utasítás priorítása" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Projektszám" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Projekt kód a gyártáshoz" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "A gyártási foglalások teljesítése háttérfeladat elvégzése nem sikerült" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "A {build} gyártási utasítás elkészült" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Gyártási utasítás elkészült" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Egyedi követésre jelölt alkatrészeknél kötelező sorozatszámot megadni" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Nincs gyártási kimenet megadva" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Gyártási kimenet már kész" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Gyártási kimenet nem egyezik a gyártási utasítással" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Mennyiségnek nullánál többnek kell lennie" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "A mennyiség nem lehet több mint a gyártási mennyiség" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "A {serial} gyártási kimenet nem felelt meg az összes kötelező teszten" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Gyártási Rendelés Sor Tétel" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Gyártás objektum" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Gyártás objektum" msgid "Quantity" msgstr "Mennyiség" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Gyártáshoz szükséges mennyiség" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Gyártási tételnek meg kell adnia a gyártási kimenetet, mivel a fő darab egyedi követésre kötelezett" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "A lefoglalt mennyiség ({q}) nem lépheti túl a szabad készletet ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Készlet túlfoglalva" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Lefoglalt mennyiségnek nullánál többnek kell lennie" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "A készlet tétel nem egyezik az alkatrészjegyzékkel" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Készlet tétel" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Forrás készlet tétel" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Készlet mennyiség amit foglaljunk a gyártáshoz" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Beépítés ebbe" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Cél készlet tétel" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Szükséges tételek automatikus hozzárendelése a megfelelő sorozatszámokkal" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "A következő sorozatszámok már léteznek vagy nem megfelelőek" @@ -1107,8 +1109,8 @@ msgstr "Selejtezés oka" msgid "Location for completed build outputs" msgstr "A kész gyártási kimenetek helye" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1296,9 +1298,9 @@ msgstr "Alkatrészjegyzék Alkatrész Név" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Beszállítói alkatrész" @@ -1314,7 +1316,7 @@ msgstr "Gyártási Hivatkozás" msgid "Part Category Name" msgstr "Alkatrész kategória Neve" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Követésre kötelezett" @@ -1322,12 +1324,12 @@ msgstr "Követésre kötelezett" msgid "Inherited" msgstr "Örökölt" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Változatok" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Alkatrészjegyzék tétel" @@ -1390,11 +1392,11 @@ msgstr "Kész" msgid "Stock required for build order" msgstr "A gyártási utasításhoz készlet szükséges" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Késésben lévő gyártás" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "A {bo} gyártás most már késésben van" @@ -1486,8 +1488,8 @@ msgstr "Kulcs string egyedi kell legyen" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1497,8 +1499,8 @@ msgstr "Felhasználó" msgid "Price break quantity" msgstr "Ársáv mennyiség" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Ár" @@ -1520,7 +1522,7 @@ msgstr "Webhook neve" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktív" @@ -1599,8 +1601,8 @@ msgstr "Cím" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Link" @@ -1625,7 +1627,7 @@ msgstr "Elolvasva" msgid "Was this news item read?" msgstr "Elolvasva?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1676,7 +1678,7 @@ msgstr "Definíció" msgid "Unit definition" msgstr "Mértékegység definíció" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Melléklet" @@ -1717,7 +1719,7 @@ msgstr "Fájl mérete" msgid "File size in bytes" msgstr "Fájlméret bájtban" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "A melléklet model típusa érvénytelen" @@ -1746,7 +1748,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "Az állapot logikai kulcsa amely megegyezik az üzleti logika egyedi állapotával" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Érték" @@ -1815,7 +1817,7 @@ msgstr "A logikai kulcsnak szerepelnie kell a hivatkozott állapotok logikai kul msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1831,7 +1833,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "Lezárt" @@ -1915,7 +1917,7 @@ msgstr "" msgid "Barcode Scan" msgstr "Vonalkód beolvasás" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Adat" @@ -1939,7 +1941,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Kontextus" @@ -1956,7 +1958,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Eredmény" @@ -1964,113 +1966,113 @@ msgstr "Eredmény" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Új {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Egy új megrendelés létrehozva, és hozzád rendelve" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} megszakítva" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "Egy hozzád rendelt megrendelés megszakítva" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Készlet érkezett" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Készlet érkezett egy beszerzési megrendeléshez" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "Készlet érkezett vissza egy visszavétel miatt" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Plugin hiba" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Folyamatban" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Folyamatban lévő feladatok" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Ütemezett Feladatok" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Hibás feladatok" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "Feladat ID" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Egyedi feladat ID" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Zárol" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Zárolási idő" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Feladat neve" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Funkció" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Funkció neve" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Paraméterek" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Feladat paraméterei" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Kulcsszó paraméterek" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Feladat kulcsszó paraméterek" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Fájlnév" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "Modell típusa" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "A felhasználónak nincs joga létrehozni vagy módosítani ehhez a modelhez tartozó mellékleteket" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2410,8 +2412,8 @@ msgstr "Kategória paraméter sablonok másolása" msgid "Copy category parameter templates when creating a part" msgstr "Kategória paraméter sablonok másolása alkatrész létrehozásakor" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Sablon" @@ -2424,7 +2426,7 @@ msgstr "Alkatrészek alapból sablon alkatrészek legyenek" msgid "Parts can be assembled from other components by default" msgstr "Alkatrészeket alapból lehessen gyártani másik alkatrészekből" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Összetevő" @@ -2433,7 +2435,7 @@ msgstr "Összetevő" msgid "Parts can be used as sub-components by default" msgstr "Alkatrészek alapból használhatók összetevőként más alkatrészekhez" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Beszerezhető" @@ -2441,7 +2443,7 @@ msgstr "Beszerezhető" msgid "Parts are purchaseable by default" msgstr "Alkatrészek alapból beszerezhetők legyenek" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Értékesíthető" @@ -2453,7 +2455,7 @@ msgstr "Alkatrészek alapból eladhatók legyenek" msgid "Parts are trackable by default" msgstr "Alkatrészek alapból követésre kötelezettek legyenek" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtuális" @@ -2646,7 +2648,7 @@ msgid "Log errors which occur when generating reports" msgstr "Jelentések generálása közben jelentkező hibák naplózása" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Lapméret" @@ -3345,90 +3347,98 @@ msgid "Search queries return results for whole word matches" msgstr "A keresések csak teljes szóra egyező találatokat adjanak" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Mennyiség megjelenítése a formokon" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Rendelkezésre álló alkatrész mennyiség megjelenítése néhány formon" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "ESC billentyű zárja be a formot" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "ESC billentyű használata a modális formok bezárásához" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Rögzített menüsor" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "A menü pozíciója mindig rögzítve a lap tetején" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Dátum formátum" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Preferált dátum formátum a dátumok kijelzésekor" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Alkatrész ütemezés" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Alkatrész ütemezési információk megjelenítése" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Alkatrész leltár" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Alkatrész leltár információk megjelenítése (ha a leltár funkció engedélyezett)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Táblázati szöveg hossz" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Maximális szöveg hossz ami megjelenhet a táblázatokban" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Hibariportok fogadása" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "Értesítések fogadása a rendszerhibákról" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "Utoljára használt nyomtató gépek" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "Az utoljára használt nyomtató tárolása a felhasználóhoz" @@ -3531,7 +3541,7 @@ msgstr "Kapcsolattartó telefonszáma" msgid "Contact email address" msgstr "Kapcsolattartó email címe" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Névjegy" @@ -3576,7 +3586,7 @@ msgstr "Gyárt ez a cég alkatrészeket?" msgid "Default currency used for this company" msgstr "Cég által használt alapértelmezett pénznem" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Cím" @@ -3673,7 +3683,7 @@ msgstr "Link a címinformációkhoz (külső)" msgid "Manufacturer Part" msgstr "Gyártói alkatrész" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Kiindulási alkatrész" @@ -3715,7 +3725,7 @@ msgstr "Paraméter neve" msgid "Parameter value" msgstr "Paraméter értéke" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Mértékegység" @@ -3736,7 +3746,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Kapcsolódó gyártói alkatrésznek ugyanarra a kiindulási alkatrészre kell hivatkoznia" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3768,7 +3778,7 @@ msgid "Supplier part description" msgstr "Beszállítói alkatrész leírása" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3778,15 +3788,15 @@ msgstr "Beszállítói alkatrész leírása" msgid "Note" msgstr "Megjegyzés" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "alap költség" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimális díj (pl. tárolási díj)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Csomagolás" @@ -3803,7 +3813,7 @@ msgstr "Csomagolási mennyiség" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Egy csomagban kiszállítható mennyiség, hagyd üresen az egyedi tételeknél." -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "többszörös" @@ -3979,7 +3989,7 @@ msgstr "Eredeti sor adat" msgid "Errors" msgstr "Hibák" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Érvényes" @@ -4079,7 +4089,7 @@ msgstr "Címkénkénti nyomtatandó mennyiség" msgid "Connected" msgstr "Csatlakoztatba" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Ismeretlen" @@ -4167,101 +4177,101 @@ msgstr "Gép konfiguráció" msgid "Config type" msgstr "Konfiguráció típusa" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Rendelés azonosítója" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "Kintlévő" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "Van projektszáma" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Készítette" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "Van árazás" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "Befejezve ez után" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Rendelés" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "A rendelés teljesítve" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Belső alkatrész" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "A rendelés függőben" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Kész" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Beszerzési rendelés" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4269,452 +4279,454 @@ msgstr "Beszerzési rendelés" msgid "Sales Order" msgstr "Vevői rendelés" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Visszavétel" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Teljes ár" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "A rendelés teljes ára" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Rendelés pénzneme" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "Megrendeléshez használt pénznem (hagyd üresen a cégnél alapértelmezetthez)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "A kapcsolattartó nem egyezik a kiválasztott céggel" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Rendelés leírása (opcionális)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Válassz projektszámot ehhez a rendeléshez" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Link külső weboldalra" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Cél dátum" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Várt teljesítési dátuma a megrendelésnek. Ezután már késésben lévőnek számít majd." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Kiállítás dátuma" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Kiállítás dátuma" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Felhasználó vagy csoport aki felelőse ennek a rendelésnek" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "Kapcsolattartó ehhez a rendeléshez" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "Cég címei ehhez a rendeléshez" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Rendelés azonosító" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Beszerzési rendelés állapota" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Cég akitől a tételek beszerzésre kerülnek" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Beszállítói azonosító" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Beszállítói rendelés azonosító kód" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "érkeztette" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "Rendelés teljesítési dátuma" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Cél" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "Az alkatrész beszállítója meg kell egyezzen a beszerzési rendelés beszállítójával" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "Mennyiség pozitív kell legyen" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Vevő" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Cég akinek a tételek értékesítésre kerülnek" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "Értékesítési rendelés állapot" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Vevői azonosító " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Megrendelés azonosító kódja a vevőnél" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Kiszállítás dátuma" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "szállította" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "Rendelés már teljesítve" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "Rendelés már visszavonva" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Csak nyitott rendelés jelölhető késznek" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "A rendelés nem jelölhető késznek mivel függő szállítmányok vannak" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "A rendelés nem jelölhető késznek mivel nem teljesített sortételek vannak" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Tétel mennyiség" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Sortétel azonosító" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Sortétel megjegyzései" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Cél dátuma ennek a sortételnek (hagyd üresen a rendelés céldátum használatához)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Sortétel leírása (opcionális)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "További kontextus ehhez a sorhoz" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Egységár" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "Vevői Rendelés Sortétel" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "Beszállítói alkatrésznek egyeznie kell a beszállítóval" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Beszállítói alkatrész" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Beérkezett" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Érkezett tételek száma" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Beszerzési ár" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Beszerzési egységár" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "Vevői Rendelés Extra Sor" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "Vevői Rendelés Sortétel" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Virtuális alkatrészt nem lehet vevői rendeléshez adni" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Csak értékesíthető alkatrészeket lehet vevői rendeléshez adni" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Eladási ár" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Eladási egységár" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Kiszállítva" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Szállított mennyiség" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "Vevői Rendelés Szállítása" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Szállítás dátuma" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Szállítási dátum" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "Kézbesítés dátuma" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Ellenőrizte" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Felhasználó aki ellenőrizte ezt a szállítmányt" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Szállítmány" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Szállítmány száma" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Nyomkövetési szám" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Szállítmány nyomkövetési információ" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Számlaszám" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Hozzátartozó számla referencia száma" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "Szállítmány már elküldve" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "Szállítmány nem tartalmaz foglalt készlet tételeket" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "Vevői Rendelés Extra Sor" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "Vevői rendeléshez foglalások" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "Készlet tétel nincs hozzárendelve" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Nem foglalható készlet egy másik fajta alkatrész sortételéhez" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "Nem foglalható készlet egy olyan sorhoz amiben nincs alkatrész" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "A lefoglalandó mennyiség nem haladhatja meg a készlet mennyiségét" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "Vevői rendelés nem egyezik a szállítmánnyal" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "Szállítmány nem egyezik a vevői rendeléssel" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Sor" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Vevői rendelés szállítmány azonosító" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Tétel" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Válaszd ki a foglalásra szánt készlet tételt" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Készlet foglalási mennyiség megadása" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "Visszavétel azonosító" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "Cég akitől a tételek visszavételre kerülnek" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Visszavétel állapota" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "Visszavétel sortétel" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Válaszd ki a vevőtől visszavenni kívánt tételt" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Visszavétel dátuma" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "Mikor lett visszavéve a tétel" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Kimenetel" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "Sortétel végső kimenetele" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "Sortétel visszaküldésének vagy javításának költsége" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "Visszavétel extra tétel" @@ -4809,7 +4821,7 @@ msgstr "Azonos forrás és cél dátumú Alkatrész tételeinek összevonása eg msgid "SKU" msgstr "SKU (leltári azonosító)" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Belső cikkszám" @@ -4849,7 +4861,7 @@ msgstr "Válassz cél helyet a beérkezett tételeknek" msgid "Enter batch code for incoming stock items" msgstr "Írd be a batch kódját a beérkezett tételeknek" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Lejárati dátum" @@ -5006,905 +5018,914 @@ msgstr "Visszatérítés" msgid "Reject" msgstr "Elutasított" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Késésben lévő beszerzés" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "A {po} beszerzési rendelés most már késésben van" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Késésben lévő vevői rendelés" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "A {so} vevői rendelés most már késésben van" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "Csillagozott" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "Csillagozottra szűrés" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "Mélység" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "Kategória mélységre szűrés" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "Felső szint" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "Csúcs készlethelyre szűrés" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "Lépcsőzetes" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "Szűrt eredmények tartalmazzák az alkategóriákat" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "Szülő" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "Szülő kategóriára szűrés" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "Az adott kategória alkategóriáinak kihagyása" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "Van találat" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Beérkező beszerzési rendelés" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "Kimenő vevői rendelés" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "Gyártással előállított készlet" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "A gyártási utasításhoz szükséges készlet" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Teljes alkatrészjegyzék jóváhagyása" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Ennek az opciónak ki kll lennie választva" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "Változat" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "Vannak Változatok" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "Alkatrészjegyzék ellenőrizve" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "Összeállított Alkatrész ellenőrizhető" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "Összetevő alkatrész ellenőrizhető" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "Használ" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Alkatrész kategória" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Alkatrész kategóriák" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Alapértelmezett hely" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Ebben a kategóriában lévő alkatrészek helye alapban" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Szerkezeti" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "A szerkezeti alkatrész kategóriákhoz nem lehet direktben alkatrészeket hozzáadni, csak az alkategóriáikhoz." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Alapértelmezett kulcsszavak" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Ebben a kategóriában évő alkatrészek kulcsszavai alapban" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Ikon" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Ikon (opcionális)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Nem lehet az alkatrészkategóriát szerkezeti kategóriává tenni, mert már vannak itt alkatrészek!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Alkatrészek" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "Lezárt alkatrész nem törölhető" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "Aktív alkatrész nem törölhető" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "Összeállításban felhasznált alkatrész nem törölhető" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Hibás választás a szülő alkatrészre" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Az '{self}' alkatrész nem használható a '{parent}' alkatrészjegyzékében (mert rekurzív lenne)" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Az '{parent}' alkatrész szerepel a '{self}' alkatrészjegyzékében (rekurzív)" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "Az IPN belső cikkszámnak illeszkednie kell a {pattern} regex mintára" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "Alkatrész nem lehes saját magának verziója" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "Nem lehet olyan alkatrészből új verziót csinálni ami már eleve egy verzió" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "Verzió kódot meg kell adni" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "Verziók csak összeállított alkatrészeknél engedélyezettek" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "Nem lehet sablon alkatrészből új verziót csinálni" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "A szülő alkatrésznek azonos sablonra kell mutatnia" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Létezik már készlet tétel ilyen a sorozatszámmal" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "Azonos IPN nem engedélyezett az alkatrészekre, már létezik ilyen" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "Adott alkatrész verzióból már létezik egy." -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Ilyen nevű, IPN-ű és reviziójú alkatrész már létezik." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "Szerkezeti kategóriákhoz nem lehet alkatrészeket rendelni!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Alkatrész neve" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Sablon-e" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Ez egy sablon alkatrész?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Ez az alkatrész egy másik változata?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Ebből a sablonból" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "Alkatrész leírása (opcionális)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Kulcsszavak" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Alkatrész kulcsszavak amik segítik a megjelenést a keresési eredményekben" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Alkatrész kategória" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN (Belső Cikkszám)" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Alkatrész változat vagy verziószám (pl. szín, hossz, revízió, stb.)" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Változat" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "Ez egy másik alkatrész egy verziója?" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "Ennek a verziója" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "Alapban hol tároljuk ezt az alkatrészt?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Alapértelmezett beszállító" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Alapértelmezett beszállítói alkatrész" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Alapértelmezett lejárat" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Lejárati idő (napban) ennek az alkatrésznek a készleteire" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Minimális készlet" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Minimálisan megengedett készlet mennyiség" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Alkatrész mértékegysége" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Gyártható-e ez az alkatrész más alkatrészekből?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Felhasználható-e ez az alkatrész más alkatrészek gyártásához?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Kell-e külön követni az egyes példányait ennek az alkatrésznek?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "Lehet ehhez az alkatrészhez több ellenőrzési eredményt rögzíteni?" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "Rendelhető-e ez az alkatrész egy külső beszállítótól?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Értékesíthető-e önmagában ez az alkatrész a vevőknek?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Aktív-e ez az alkatrész?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "Lezárt alkatrészt nem lehet szerkeszteni" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "Ez egy virtuális nem megfogható alkatrész, pl. szoftver vagy licenc?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Alkatrészjegyzék ellenőrző összeg" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Tárolt alkatrészjegyzék ellenőrző összeg" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "Alkatrészjegyzéket ellenőrizte" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "Alkatrészjegyzék ellenőrzési dátuma" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Létrehozó" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "Alkatrész felelőse" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Utolsó leltár" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Több értékesítése" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "Árszámítások gyorstárazásához használt pénznem" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Minimum alkatrészjegyzék költség" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "Összetevők minimum költsége" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Maximum alkatrészjegyzék költség" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "Összetevők maximum költsége" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Minimum beszerzési ár" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "Eddigi minimum beszerzési költség" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Maximum beszerzési ár" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "Eddigi maximum beszerzési költség" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "Minimum belső ár" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "Minimum költség a belső ársávok alapján" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "Maximum belső ár" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "Maximum költség a belső ársávok alapján" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "Minimum beszállítói ár" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "Minimum alkatrész ár a beszállítóktól" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "Maximum beszállítói ár" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "Maximum alkatrész ár a beszállítóktól" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Minimum alkatrészváltozat ár" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "Alkatrészváltozatok számolt minimum költsége" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Maximum alkatrészváltozat ár" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "Alkatrészváltozatok számolt maximum költsége" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Minimum költség" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "Minimum költség felülbírálása" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Maximum költség" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "Maximum költség felülbírálása" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "Számított általános minimum költség" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "Számított általános maximum költség" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "Minimum eladási ár" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "Minimum eladási ár az ársávok alapján" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "Maximum eladási ár" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "Maximum eladási ár az ársávok alapján" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Minimum eladási költség" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "Eddigi minimum eladási ár" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Maximum eladási költség" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "Eddigi maximum eladási ár" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "Leltározható alkatrész" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Tételszám" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "Egyedi készlet tételek száma a leltárkor" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "Teljes készlet a leltárkor" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Dátum" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "Leltározva ekkor" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "További megjegyzések" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "Leltározta" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Minimum készlet érték" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "Becsült minimum raktárkészlet érték" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "Maximum készlet érték" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "Becsült maximum raktárkészlet érték" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Riport" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "Leltár riport fájl (generált)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Alkatrész szám" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "Leltározott alkatrészek száma" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "Felhasználó aki a leltár riportot kérte" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "Alkatrész értékesítési ársáv" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "Alkatrész Teszt Sablon" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "Hibás sablon név - legalább egy alfanumerikus karakter kötelező" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "A lehetőségek egyediek kell legyenek" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "Teszt sablont csak ellenőrizhetőre beállított alkatrészhez lehet csinálni" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "Már létezik ilyen azonosítójú Teszt sablon ehhez az alkatrészhez" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Teszt név" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Add meg a teszt nevét" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "Teszt azonosító" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "Egyszerűsített Teszt azonosító" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Teszt leírása" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Adj hozzá egy leírást ehhez a teszthez" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Engedélyezve" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "Teszt engedélyezve?" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Kötelező" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "Szükséges-e hogy ez a teszt sikeres legyen?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Kötelező érték" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "Szükséges-e hogy ennek a tesztnek az eredményéhez kötelezően érték legyen rendelve?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Kötelező melléklet" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "Szükséges-e hogy ennek a tesztnek az eredményéhez kötelezően fájl melléklet legyen rendelve?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Lehetőségek" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "Választható lehetőségek ehhez a Teszthez (vesszővel elválasztva)" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "Alkatrész Paraméter Sablon" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "Jelölőnégyzet paraméternek nem lehet mértékegysége" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "Jelölőnégyzet paraméternek nem lehetnek választási lehetőségei" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "A paraméter sablon nevének egyedinek kell lennie" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Paraméter neve" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "Paraméter mértékegysége" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "Paraméter leírása" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "Jelölőnégyzet" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "Ez a paraméter egy jelölőnégyzet?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "Választható lehetőségek (vesszővel elválasztva)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "Alkatrész Paraméter" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "Lezárt alkatrész Paramétere nem szerkeszthető" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "Hibás választás a paraméterre" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Szülő alkatrész" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Paraméter sablon" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Paraméter értéke" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "Alkatrészcsoport Paraméter Sablon" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Alapértelmezett érték" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Alapértelmezett paraméter érték" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "Alkatrészjegyzék nem szerkeszthető mert az összeállítás le van zárva" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "Alkatrészjegyzék nem szerkeszthető mert az összeállítás változat le van zárva" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Szülő alkatrész kiválasztása" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Al alkatrész" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Válaszd ki az alkatrészjegyzékben használandó alkatrészt" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "Alkatrészjegyzék mennyiség ehhez az alkatrészjegyzék tételhez" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Ez az alkatrészjegyzék tétel opcionális" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Ez az alkatrészjegyzék tétel fogyóeszköz (készlete nincs követve a gyártásban)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Többlet" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Becsült gyártási veszteség (abszolút vagy százalékos)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Alkatrészjegyzék tétel azonosító" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Alkatrészjegyzék tétel megjegyzései" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Ellenőrző összeg" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "Alkatrészjegyzék sor ellenőrző összeg" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Jóváhagyva" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "Ez a BOM tétel jóvá lett hagyva" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "Öröklődött" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Ezt az alkatrészjegyzék tételt az alkatrész változatok alkatrészjegyzékei is öröklik" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Alkatrészváltozatok készlet tételei használhatók ehhez az alkatrészjegyzék tételhez" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "A mennyiség egész szám kell legyen a követésre kötelezett alkatrészek esetén" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "Al alkatrészt kötelező megadni" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "Alkatrészjegyzék tétel helyettesítő" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "A helyettesítő alkatrész nem lehet ugyanaz mint a fő alkatrész" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Szülő alkatrészjegyzék tétel" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Helyettesítő alkatrész" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "1.rész" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "2.rész" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Válassz kapcsolódó alkatrészt" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "Alkatrész kapcsolat nem hozható létre önmagával" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "Már létezik duplikált alkatrész kapcsolat" @@ -6316,83 +6337,83 @@ msgstr "Nincs megadva művelet" msgid "No matching action found" msgstr "Nincs egyező művelet" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Nincs egyező vonalkód" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Egyezés vonalkódra" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "Model nem támogatott" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "Model példány hiányzik" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "Ez a vonalkód már egy másik tételé" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "Nem található megfelelő alkatrész adat" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "Nem található megfelelő beszállítói alkatrész" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "Több beszállítói alkatrész található" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "Beszállítói alkatrész található" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "Ez a termék már bevételezve" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "Több egyező sortétel is található" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "Nincs egyező sortétel" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "Vonalkód nem egyezik egy létező készlet tétellel sem" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "Készlet tétel nem egyezik a sortétellel" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "Nincs elegendő" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "Készlet tétel lefoglalva egy vevői rendeléshez" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "Nincs elég információ" @@ -6835,7 +6856,7 @@ msgstr "Szegély" msgid "Print a border around each label" msgstr "Az egyes címkék körüli margó" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "Fekvő" @@ -7012,17 +7033,17 @@ msgstr "Módszer" msgid "No author found" msgstr "Nincs szerző" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "A '{p}' plugin nem kompatibilis az aktuális applikáció verzióval {v}" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "A pluginhoz minimum {v} verzió kell" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "A pluginhoz maximum {v} verzió kell" @@ -7259,116 +7280,116 @@ msgstr "Jogi információk" msgid "Letter" msgstr "„Letter” méret" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "Ilyen nevű Sablon fájl már létezik" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Sablon neve" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "Sablon leírása" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "Verziószám (automatikusan nő)" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Fájlnév minta" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "Minta a fájlnevek előállításához" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "Sablon engedélyezve" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "A sablon által célzott model típus" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Szűrők" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "Sablon lekérdezés szűrők (vesszővel elválasztott kulcs=érték párok)" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "Sablon file" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "Lapméret a PDF riportokhoz" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "Jelentés fekvő nézetben" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Szélesség [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Címke szélessége, mm-ben" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Magasság [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Címke magassága, mm-ben" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Részlet" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "Riport részlet fájl" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Részlet fájl leírása" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Eszköz" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "Riport asset fájl" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "Asset fájl leírása" @@ -7450,7 +7471,7 @@ msgstr "Összesen" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Sorozatszám" @@ -7640,313 +7661,313 @@ msgstr "A beszállítói alkatrészhez van megadva csomagolási mennyiség, de a msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Sorozatszámot nem lehet megadni nem követésre kötelezett alkatrész esetén" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "Készlethely típus" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "Készlethely típusok" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "Alapértelmezett ikon azokhoz a helyekhez, melyeknek nincs ikonja beállítva (válaszható)" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Készlet hely" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Készlethelyek" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Tulajdonos" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Tulajdonos kiválasztása" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "A szerkezeti raktári helyekre nem lehet direktben raktározni, csak az al-helyekre." -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Külső" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "Ez egy külső készlethely" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "Helyszín típusa" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "Tárolóhely típus" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "Nem lehet ezt a raktári helyet szerkezetivé tenni, mert már vannak itt tételek!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "A szerkezeti raktári helyre nem lehet készletet felvenni!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "Virtuális alkatrészből nem lehet készletet létrehozni" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "A beszállítói alkatrész típusa ('{self.supplier_part.part}') mindenképpen {self.part} kellene, hogy legyen" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "Mennyiség 1 kell legyen a sorozatszámmal rendelkező tételnél" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Nem lehet sorozatszámot megadni ha a mennyiség több mint egy" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "A tétel nem tartozhat saját magához" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "A tételnek kell legyen gyártási azonosítója ha az is_bulding igaz" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "Gyártási azonosító nem ugyanarra az alkatrész objektumra mutat" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Szülő készlet tétel" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Kiindulási alkatrész" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Válassz egy egyező beszállítói alkatrészt ehhez a készlet tételhez" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "Hol található ez az alkatrész?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "A csomagolása ennek a készlet tételnek itt van tárolva" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Beépítve ebbe" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "Ez a tétel be van építve egy másik tételbe?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Sorozatszám ehhez a tételhez" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Batch kód ehhez a készlet tételhez" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Készlet mennyiség" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Forrás gyártás" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Gyártás ehhez a készlet tételhez" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Felhasználva ebben" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "Felhasználva ebben a gyártásban" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Forrás beszerzési rendelés" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Beszerzés ehhez a készlet tételhez" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "Cél vevői rendelés" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Készlet tétel lejárati dátuma. A készlet lejártnak tekinthető ezután a dátum után" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Törlés ha kimerül" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Készlet tétel törlése ha kimerül" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "Egy egység beszerzési ára a beszerzés időpontjában" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "Alkatrésszé alakítva" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "Az alkatrész nem követésre kötelezett" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "Mennyiség egész szám kell legyen" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "A mennyiség nem haladhatja meg az elérhető készletet ({self.quantity})" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "A mennyiség nem egyezik a megadott sorozatszámok számával" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "Ez a Teszt sablon nem létezik" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Készlet tétel hozzárendelve egy vevői rendeléshez" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Készlet tétel beépül egy másikba" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "A készlet tétel más tételeket tartalmaz" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Készlet tétel hozzárendelve egy vevőhöz" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "Készlet tétel gyártás alatt" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "Követésre kötelezett készlet nem vonható össze" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Duplikált készlet tételek vannak" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "A készlet tétel ugyanarra az alkatrészre kell vonatkozzon" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "A készlet tétel ugyanarra a beszállítói alkatrészre kell vonatkozzon" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "Készlet tételek állapotainak egyeznie kell" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Készlet tétel nem mozgatható mivel nincs készleten" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "Készlettörténet" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Bejegyzés megjegyzései" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "Készlet Tétel Ellenőrzés Eredménye" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Ehhez a teszthez meg kell adni értéket" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "Ehhez a teszthez fel kell tölteni mellékletet" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "A teszt eredménye érvénytelen" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Teszt eredménye" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Teszt kimeneti értéke" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Teszt eredmény melléklet" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Tesztek megjegyzései" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "Teszt állomás" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "A tesztet elvégző tesztállomás azonosítója" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "Elkezdődött" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "A teszt indításának időpontja" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "Befejezve" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "A teszt befejezésének időpontja" @@ -8402,6 +8423,7 @@ msgstr "Törődést igénylő függőben levő adatbázis migrációk találhat #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8456,19 +8478,19 @@ msgstr "Felhasználók" msgid "Select which users are assigned to this group" msgstr "Válaszd ki mely felhasználók tartoznak ehhez a csoporthoz" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "Az alábbi felhasználók több csoportnak is tagjai" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Személyes adatok" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Jogosultságok" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Fontos dátumok" diff --git a/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po index 223ff718a1..2abc02d038 100644 --- a/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Language: id_ID\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API endpoint tidak ditemukan" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Pengguna tidak memiliki izin untuk melihat model ini" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Jumlah yang diberikan tidak valid" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "Nilai yang diberikan tidak sesuai dengan pola yang ditentukan: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Nomor seri kosong" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Gandakan Nomor Seri" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Tidak ada nomor seri ditemukan" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Hapus tag-tag HTML dari nilai ini" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Pilihan tidak valid" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Nama" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Keterangan" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Keterangan (opsional)" @@ -470,11 +470,11 @@ msgstr "Terjadi Kesalahan Server" msgid "An error has been logged by the server." msgstr "Sebuah kesalahan telah dicatat oleh server." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Harus berupa angka yang valid" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Mata Uang" @@ -522,28 +522,29 @@ msgstr "Kelebihan tidak boleh melebihi 100%" msgid "Invalid value for overage" msgstr "Nilai kelebihan tidak valid" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Produksi Induk" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Bagian" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Pesanan harus dibatalkan sebelum dapat dihapus" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Tersedia" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Order Produksi" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Order Produksi" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Pilihan produksi induk tidak valid" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Referensi Order Produksi" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Referensi Order Produksi" msgid "Reference" msgstr "Referensi" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Produksi induk dari produksi ini" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Pilih bagian untuk diproduksi" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Referensi Order Penjualan" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Order penjualan yang teralokasikan ke pesanan ini" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Lokasi Sumber" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Pilih dari lokasi mana stok akan diambil untuk produksi ini (kosongkan untuk mengambil stok dari mana pun)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Lokasi Tujuan" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Pilih lokasi di mana item selesai akan disimpan" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Jumlah Produksi" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Jumlah item stok yang akan dibuat" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Item selesai" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Jumlah stok item yang telah diselesaikan" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Status pembuatan" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Kode status pembuatan" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Kode Kelompok" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Kode kelompok untuk hasil produksi ini" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Tanggal Pembuatan" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Target tanggal selesai" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Target tanggal selesai produksi. Produksi akan menjadi terlambat setelah tanggal ini." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Tanggal selesai" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "diselesaikan oleh" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Diserahkan oleh" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Pengguna yang menyerahkan order ini" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Penanggung Jawab" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Tautan eksternal" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Tautan menuju URL eksternal" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Tidak ada hasil produksi yang ditentukan" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Hasil produksi sudah selesai" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Hasil produksi tidak sesuai dengan order produksi" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Jumlah harus lebih besar daripada nol" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "Jumlah" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Item produksi harus menentukan hasil produksi karena bagian utama telah ditandai sebagai dapat dilacak" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Item stok teralokasikan terlalu banyak" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Jumlah yang dialokasikan harus lebih dari nol" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Jumlah harus 1 untuk stok dengan nomor seri" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Stok Item" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Sumber stok item" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Jumlah stok yang dialokasikan ke produksi" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Pasang ke" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Tujuan stok item" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Alokasikan item yang diperlukan dengan nomor seri yang sesuai secara otomatis" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Nomor-nomor seri berikut sudah ada atau tidak valid" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "Lokasi hasil pesanan yang selesai" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Item tagihan material" @@ -1389,11 +1391,11 @@ msgstr "Selesai" msgid "Stock required for build order" msgstr "Stok dibutuhkan untuk order produksi" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Pengguna" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Harga" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktif" @@ -1598,8 +1600,8 @@ msgstr "Judul" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Tautan" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Lampiran" @@ -1716,7 +1718,7 @@ msgstr "Ukuran Berkas" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Barang diterima" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Nama File" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Komponen" @@ -2432,7 +2434,7 @@ msgstr "Komponen" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Ukuran Halaman" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "Kontak alamat surel" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Kontak" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Tidak diketahui" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Selesai" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Total Harga" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Pelanggan" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Harga Jual" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Dikirim" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "Tolak" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Tanggal" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Lapor" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Aktif" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Pilihan" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "Tidak ada tindakan yang ditentukan" msgid "No matching action found" msgstr "Aksi tidak ditemukan" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "Tidak cukup informasi" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "Legal" msgid "Letter" msgstr "Letter" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Nomor Seri" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "Lampiran perlu diunggah untuk tes ini" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Pengguna" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Data pribadi" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po index 307b999149..16e05bc0db 100644 --- a/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "Devi abilitare l'autenticazione a due fattori prima di fare qualsiasi altra cosa." -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "Endpoint API non trovato" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "Lista elementi fornita non valida" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Filtri forniti non validi" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "L'utente non ha i permessi per vedere questo modello" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Impossibile convertire {original} in {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Quantità inserita non valida" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Valore decimale non valido" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Il valore '{name}' non è nel formato del pattern" msgid "Provided value does not match required pattern: " msgstr "Il valore fornito non corrisponde al modello richiesto: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "Impossibile serializzare più di 1000 elementi contemporaneamente" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Numero seriale vuoto" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Seriale Duplicato" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Gruppo non valido: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "L'intervallo di gruppo {group} supera la quantità consentita ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nessun numero di serie trovato" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Il numero di numeri di serie univoci ({len(serials)}) deve corrispondere alla quantità ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Rimuovi i tag HTML da questo valore" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "I dati contengono un contenuto in markdown proibito" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Scelta non valida" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Nome" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Descrizione" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Descrizione (opzionale)" @@ -470,11 +470,11 @@ msgstr "Errore del server" msgid "An error has been logged by the server." msgstr "Un errore è stato loggato dal server." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Deve essere un numero valido" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Valuta" @@ -522,28 +522,29 @@ msgstr "L'eccesso non deve superare il 100%" msgid "Invalid value for overage" msgstr "Valore non valido per eccedenza" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Stato dell'ordine" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Produzione Genitore" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Articolo" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Categoria" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Produzione Antenata" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Assegnato a me" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Inviato da" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Assegnato a" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "La produzione deve essere annullata prima di poter essere eliminata" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Consumabile" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Opzionale" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Assemblaggio" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Monitorato" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Testabile" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "Ordine In Corso" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Allocato" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Disponibile" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Ordine di Produzione" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Ordini di Produzione" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Assembly BOM non è stato convalidato" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "L'ordine di generazione non può essere creato per una parte inattiva" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "L'ordine di compilazione non può essere creato per una parte sbloccata" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Scelta non valida per la produzione genitore" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "L'utente o il gruppo responsabile deve essere specificato" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "L'ordine di costruzione della parte non può essere cambiata" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Riferimento Ordine Di Produzione" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Riferimento Ordine Di Produzione" msgid "Reference" msgstr "Riferimento" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Breve descrizione della build (facoltativo)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Ordine di produzione a cui questa produzione viene assegnata" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Selezionare parte da produrre" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Numero di riferimento ordine di vendita" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Ordine di vendita a cui questa produzione viene assegnata" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Posizione Di Origine" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Seleziona la posizione da cui prelevare la giacenza (lasciare vuoto per prelevare da qualsiasi posizione di magazzino)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Posizione Della Destinazione" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Seleziona il luogo in cui gli articoli completati saranno immagazzinati" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Quantità Produzione" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Numero di articoli da costruire" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Articoli completati" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Numero di articoli di magazzino che sono stati completati" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Stato Produzione" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Codice stato di produzione" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Codice Lotto" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Codice del lotto per questa produzione" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Data di creazione" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Data completamento obiettivo" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Data di completamento della produzione. Dopo tale data la produzione sarà in ritardo." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Data di completamento" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "Completato da" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Rilasciato da" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Utente che ha emesso questo ordine di costruzione" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Responsabile" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Utente o gruppo responsabile di questo ordine di produzione" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Collegamento esterno" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Link a URL esterno" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Priorità di produzione" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Priorità di questo ordine di produzione" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Codice del progetto" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Codice del progetto per questo ordine di produzione" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Impossibile scaricare l'attività per completare le allocazioni di build" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "L'ordine di produzione {build} è stato completato" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "L'ordine di produzione è stato completato" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Deve essere fornita un numero di serie per gli articoli rintracciabili" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Nessun output di produzione specificato" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "La produzione è stata completata" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "L'output della produzione non corrisponde all'ordine di compilazione" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "La quantità deve essere maggiore di zero" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "La quantità non può essere maggiore della quantità in uscita" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "L'output della build {serial} non ha superato tutti i test richiesti" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Elemento di Riga Ordine di Produzione" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Crea oggetto" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Crea oggetto" msgid "Quantity" msgstr "Quantità" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Quantità richiesta per l'ordine di costruzione" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "L'elemento di compilazione deve specificare un output poiché la parte principale è contrassegnata come rintracciabile" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "La quantità assegnata ({q}) non deve essere maggiore della quantità disponibile ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "L'articolo in giacenza è sovrallocato" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "La quantità di assegnazione deve essere maggiore di zero" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "La quantità deve essere 1 per lo stock serializzato" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "L'articolo in stock selezionato non corrisponde alla voce nella BOM" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Articoli in magazzino" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Origine giacenza articolo" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Quantità di magazzino da assegnare per la produzione" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Installa in" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Destinazione articolo in giacenza" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Assegna automaticamente gli articoli richiesti con i numeri di serie corrispondenti" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "I seguenti numeri di serie sono già esistenti o non sono validi" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "Posizione per gli output di build completati" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Articolo Fornitore" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Tracciabile" @@ -1321,12 +1323,12 @@ msgstr "Tracciabile" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Consenti Le Varianti" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Distinta base (Bom)" @@ -1389,11 +1391,11 @@ msgstr "Completo" msgid "Stock required for build order" msgstr "Giacenza richiesta per l'ordine di produzione" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Ordine di produzione in ritardo" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "L'ordine di produzione {bo} è in ritardo" @@ -1485,8 +1487,8 @@ msgstr "La stringa chiave deve essere univoca" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Utente" msgid "Price break quantity" msgstr "Quantità prezzo limite" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Prezzo" @@ -1519,7 +1521,7 @@ msgstr "Nome per questa notifica" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Attivo" @@ -1598,8 +1600,8 @@ msgstr "Titolo" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Collegamento" @@ -1624,7 +1626,7 @@ msgstr "Letto" msgid "Was this news item read?" msgstr "Queste notizie sull'elemento sono state lette?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Allegato" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Valore" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "Scansione Codice A Barre" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Dati" @@ -1938,7 +1940,7 @@ msgstr "Data e ora della scansione del codice a barre" msgid "URL endpoint which processed the barcode" msgstr "Endpoint URL che ha elaborato il codice a barre" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Contesto" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "Dati di risposta dalla scansione del codice a barre" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Risultato" @@ -1963,113 +1965,113 @@ msgstr "Risultato" msgid "Was the barcode scan successful?" msgstr "La scansione del codice a barre è riuscita?" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Nuovo {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Un nuovo ordine è stato creato e assegnato a te" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Elemento ricevuto" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Gli elementi sono stati ricevuti a fronte di un ordine di acquisto" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Errore generato dal plugin" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Nome del file" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "Copia Template Parametri Categoria" msgid "Copy category parameter templates when creating a part" msgstr "Copia i modelli dei parametri categoria quando si crea un articolo" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Modello" @@ -2423,7 +2425,7 @@ msgstr "Gli articoli sono modelli per impostazione predefinita" msgid "Parts can be assembled from other components by default" msgstr "Gli articoli possono essere assemblate da altri componenti per impostazione predefinita" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Componente" @@ -2432,7 +2434,7 @@ msgstr "Componente" msgid "Parts can be used as sub-components by default" msgstr "Gli articoli possono essere assemblati da altri componenti per impostazione predefinita" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Acquistabile" @@ -2440,7 +2442,7 @@ msgstr "Acquistabile" msgid "Parts are purchaseable by default" msgstr "Gli articoli sono acquistabili per impostazione predefinita" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Vendibile" @@ -2452,7 +2454,7 @@ msgstr "Gli articoli sono acquistabili per impostazione predefinita" msgid "Parts are trackable by default" msgstr "Gli articoli sono tracciabili per impostazione predefinita" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtuale" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Dimensioni pagina" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Mostra quantità nei moduli" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Visualizzare la quantità di pezzi disponibili in alcuni moduli" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Il tasto Esc chiude i moduli" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Utilizzare il tasto Esc per chiudere i moduli modali" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Barra di navigazione fissa" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "La posizione della barra di navigazione è fissata nella parte superiore dello schermo" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Formato Data" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Formato predefinito per visualizzare le date" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Programmazione Prodotto" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Mostra informazioni sulla pianificazione del prodotto" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Inventario Prodotto" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Visualizza le informazioni d'inventario dell'articolo (se la funzionalità d'inventario è abilitata)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Lunghezza Stringa Tabella" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "Numero di telefono di contatto" msgid "Contact email address" msgstr "Indirizzo email" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Contatto" @@ -3575,7 +3585,7 @@ msgstr "Questa azienda produce articoli?" msgid "Default currency used for this company" msgstr "Valuta predefinita utilizzata per questa azienda" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Indirizzo" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "Codice articolo produttore" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Articolo di base" @@ -3714,7 +3724,7 @@ msgstr "Nome parametro" msgid "Parameter value" msgstr "Valore del parametro" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Unità" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Descrizione articolo fornitore" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Descrizione articolo fornitore" msgid "Note" msgstr "Nota" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "costo base" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Onere minimo (ad esempio tassa di stoccaggio)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Confezionamento" @@ -3802,7 +3812,7 @@ msgstr "Quantità Confezione" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "multiplo" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Valido" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Sconosciuto" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Riferimento ordine" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Creato Da" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Ordine" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Articolo interno" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Completato" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "Ha Spedizione" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Ordine D'Acquisto" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Ordine D'Acquisto" msgid "Sales Order" msgstr "Ordini di Vendita" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Restituisci ordine" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Prezzo Totale" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "Prezzo totale dell'ordine" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "Il contatto non corrisponde all'azienda selezionata" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Descrizione dell'ordine (opzionale)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Seleziona il codice del progetto per questo ordine" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Collegamento a un sito web esterno" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Data scadenza" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Data prevista per la consegna dell'ordine. L'ordine scadrà dopo questa data." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Data di emissione" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Data di emissione ordine" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Utente o gruppo responsabile di questo ordine" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "Punto di contatto per questo ordine" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Riferimento ordine" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Stato ordine d'acquisto" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Azienda da cui sono stati ordinati gli articoli" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Riferimento fornitore" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Codice di riferimento ordine fornitore" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "ricevuto da" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "Data ordine completato" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Destinazione" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "Destinazione per gli elementi ricevuti" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "Il fornitore dell'articolo deve corrispondere al fornitore dell'ordine di produzione" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "La quantità deve essere un numero positivo" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Cliente" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Azienda da cui sono stati ordinati gli elementi" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Riferimento Cliente " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Codice di riferimento Ordine del Cliente" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Data di spedizione" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "spedito da" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Solo un ordine aperto può essere contrassegnato come completo" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "L'ordine non può essere completato in quanto ci sono spedizioni incomplete" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "L'ordine non può essere completato perché ci sono allocazioni incomplete" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "L'ordine non può essere completato perché ci sono elementi di riga incompleti" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Quantità Elementi" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Riferimento Linea Elemento" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Note linea elemento" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Data di destinazione per questa voce di riga (lasciare vuoto per utilizzare la data di destinazione dall'ordine)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Contesto aggiuntivo per questa voce" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Prezzo unitario" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "L'articolo del fornitore deve corrispondere al fornitore" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Articolo Fornitore" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Ricevuto" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Numero di elementi ricevuti" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Prezzo di Acquisto" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Prezzo di acquisto unitario" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Un articolo virtuale non può essere assegnato ad un ordine di vendita" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Solo gli articoli vendibili possono essere assegnati a un ordine di vendita" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Prezzo di Vendita" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Prezzo unitario di vendita" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Spedito" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Quantità spedita" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Data di spedizione" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Verificato Da" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Utente che ha controllato questa spedizione" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Spedizione" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Numero di spedizione" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Numero di monitoraggio" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Informazioni di monitoraggio della spedizione" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Numero Fattura" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Numero di riferimento per la fattura associata" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "La spedizione è già stata spedita" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "La spedizione non ha articoli di stock assegnati" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "L'elemento di magazzino non è stato assegnato" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Impossibile allocare l'elemento stock a una linea con un articolo diverso" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "Impossibile allocare stock a una riga senza un articolo" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "La quantità di ripartizione non puo' superare la disponibilità della giacenza" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "La quantità deve essere 1 per l'elemento serializzato" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "L'ordine di vendita non corrisponde alla spedizione" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "La spedizione non corrisponde all'ordine di vendita" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Linea" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Riferimento della spedizione ordine di vendita" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Elemento" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Seleziona elemento stock da allocare" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Inserisci la quantità assegnata alla giacenza" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Seleziona l'elemento da restituire dal cliente" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Data di ricezione" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Risultati" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Numero Dell'articolo Interno" @@ -4848,7 +4860,7 @@ msgstr "Seleziona la posizione di destinazione per gli elementi ricevuti" msgid "Enter batch code for incoming stock items" msgstr "Inserisci il codice univoco per gli articoli in arrivo" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Data di Scadenza" @@ -5005,905 +5017,914 @@ msgstr "Rimborso" msgid "Reject" msgstr "Rifiuta" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Ordine D'Acquisto in ritardo" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "L'ordine d'acquisto {po} è in ritardo" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Ordini Di Vendita in ritardo" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "L'ordine di vendita {so} è ora in ritardo" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Ordine D'Acquisto In Arrivo" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "Ordine di Vendita in Uscita" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "Giacenza prodotta dall'Ordine di Costruzione" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "Giacenza richiesta per l'Ordine di Produzione" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Convalida l'intera Fattura dei Materiali" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Questa opzione deve essere selezionata" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Categoria Articoli" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Categorie Articolo" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Posizione Predefinita" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Posizione predefinita per gli articoli di questa categoria" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Strutturale" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Le parti non possono essere assegnate direttamente a una categoria strutturale, ma possono essere assegnate a categorie subordinate." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Keywords predefinite" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Parole chiave predefinite per gli articoli in questa categoria" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Icona" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Icona (facoltativa)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Non puoi rendere principale questa categoria di articoli perché alcuni articoli sono già assegnati!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Articoli" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Scelta non valida per l'articolo principale" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Esiste già un elemento stock con questo numero seriale" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "Non è consentito duplicare IPN nelle impostazioni dell'articolo" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Un articolo con questo Nome, IPN e Revisione esiste già." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "Gli articoli non possono essere assegnati a categorie articolo principali!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Nome articolo" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "È Template" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Quest'articolo è un articolo di template?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Questa parte è una variante di un altro articolo?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Variante Di" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Parole Chiave" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Categoria articolo" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN - Numero di riferimento interno" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Numero di revisione o di versione" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Revisione" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "Dove viene normalmente immagazzinato questo articolo?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Fornitore predefinito" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Articolo fornitore predefinito" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Scadenza Predefinita" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Scadenza (in giorni) per gli articoli in giacenza di questo pezzo" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Scorta Minima" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Livello minimo di giacenza consentito" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Unita di misura per questo articolo" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Questo articolo può essere costruito da altri articoli?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Questo articolo può essere utilizzato per costruire altri articoli?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Questo articolo ha il tracciamento per gli elementi unici?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "Quest'articolo può essere acquistato da fornitori esterni?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Questo pezzo può essere venduto ai clienti?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Quest'articolo è attivo?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "È una parte virtuale, come un prodotto software o una licenza?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Somma di controllo Distinta Base" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Somma di controllo immagazzinata Distinta Base" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "Distinta Base controllata da" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "Data di verifica Distinta Base" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Creazione Utente" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Ultimo Inventario" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Vendita multipla" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "Valuta utilizzata per calcolare i prezzi" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Costo Minimo Distinta Base" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "Costo minimo dei componenti dell'articolo" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Costo Massimo Distinta Base" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "Costo massimo dei componenti dell'articolo" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Importo Acquisto Minimo" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "Costo minimo di acquisto storico" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Importo massimo acquisto" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "Costo massimo di acquisto storico" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "Prezzo Interno Minimo" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "Costo minimo basato su interruzioni di prezzo interne" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "Prezzo Interno Massimo" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "Costo massimo basato su interruzioni di prezzo interne" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "Prezzo Minimo Fornitore" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "Prezzo minimo articolo da fornitori esterni" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "Prezzo Massimo Fornitore" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "Prezzo massimo dell'articolo proveniente da fornitori esterni" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Variazione di costo minimo" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "Costo minimo calcolato di variazione dell'articolo" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Massima variazione di costo" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "Costo massimo calcolato di variazione dell'articolo" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Costo Minimo" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Costo Massimo" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "Costo minimo totale calcolato" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "Costo massimo totale calcolato" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "Prezzo Di Vendita Minimo" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "Prezzo minimo di vendita basato sulle interruzioni di prezzo" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "Prezzo Di Vendita Massimo" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "Prezzo massimo di vendita basato sulle interruzioni di prezzo" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Costo Di Vendita Minimo" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "Prezzo storico minimo di vendita" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Costo Di Vendita Minimo" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "Prezzo storico massimo di vendita" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "Articolo per l'inventario" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Contatore Elemento" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "Numero di scorte individuali al momento dell'inventario" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "Totale delle scorte disponibili al momento dell'inventario" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Data" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "Data in cui è stato effettuato l'inventario" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Note aggiuntive" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "Utente che ha eseguito questo inventario" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Costo Minimo Scorta" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "Costo minimo stimato di magazzino a disposizione" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "Costo Massimo Scorte" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "Costo massimo stimato di magazzino a disposizione" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "File Report Inventario (generato internamente)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Conteggio Articolo" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "Numero di articoli oggetto d'inventario" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "Utente che ha richiesto questo report inventario" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "Il modello di prova può essere creato solo per gli articoli testabili" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Nome Test" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Inserisci un nome per la prova" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Descrizione Di Prova" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Inserisci descrizione per questa prova" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Abilitato" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Richiesto" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "Questa prova è necessaria per passare?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Valore richiesto" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "Questa prova richiede un valore quando si aggiunge un risultato di prova?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Allegato Richiesto" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "Questa prova richiede un file allegato quando si aggiunge un risultato di prova?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "Il nome del modello del parametro deve essere univoco" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Nome Parametro" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "Descrizione del parametro" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Articolo principale" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Modello Parametro" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Valore del Parametro" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Valore Predefinito" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Valore Parametro Predefinito" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Seleziona articolo principale" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Articolo subordinato" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Seleziona l'articolo da utilizzare nella Distinta Base" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "Quantità Distinta Base per questo elemento Distinta Base" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Questo elemento della Distinta Base è opzionale" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Questo elemento della Distinta Base è consumabile (non è tracciato negli ordini di produzione)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Eccedenza" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Quantità stimata scarti di produzione (assoluta o percentuale)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Riferimento Elemento Distinta Base" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Note Elemento Distinta Base" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Codice di controllo" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "Codice di controllo Distinta Base" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Convalidato" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Questo elemento della Distinta Base viene ereditato dalle Distinte Base per gli articoli varianti" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Gli elementi in giacenza per gli articoli varianti possono essere utilizzati per questo elemento Distinta Base" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "La quantità deve essere un valore intero per gli articoli rintracciabili" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "L'articolo subordinato deve essere specificato" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "Elemento Distinta Base Sostituito" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "La parte sostituita non può essere la stessa dell'articolo principale" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Elemento principale Distinta Base" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Sostituisci l'Articolo" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Articolo 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Articolo 2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Seleziona Prodotto Relativo" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "Non si può creare una relazione tra l'articolo e sé stesso" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "La relazione duplicata esiste già" @@ -6315,83 +6336,83 @@ msgstr "Nessuna azione specificata" msgid "No matching action found" msgstr "Nessuna azione corrispondente trovata" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Nessuna corrispondenza trovata per i dati del codice a barre" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Corrispondenza trovata per i dati del codice a barre" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "Il codice a barre corrisponde a un elemento esistente" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "Nessuna plugin corrispondente trovato per i dati del codice a barre" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "Nessun ordine di vendita fornito" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "Scorte insufficienti disponibili" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "Metodo" msgid "No author found" msgstr "Nessun autore trovato" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Nome modello" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "Descrizione del template" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "Allega al Modello su Stampa" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "Salva l'output del report come allegato contro l'istanza del modello collegato durante la stampa" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Formato del nome file" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filtri" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Larghezza [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Larghezza dell'etichetta, specificata in mm" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Altezza [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Larghezza dell'etichetta, specificata in mm" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "Report file snippet" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Descrizione file snippet" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Risorsa" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "Report file risorsa" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "File risorsa descrizione" @@ -7449,7 +7470,7 @@ msgstr "Totale" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Numero Seriale" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "I numeri di serie non possono essere forniti per un articolo non tracciabile" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Ubicazione magazzino" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Posizioni magazzino" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Proprietario" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Seleziona Owner" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Gli elementi di magazzino non possono essere direttamente situati in un magazzino strutturale, ma possono essere situati in ubicazioni secondarie." -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Esterno" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "Si tratta di una posizione esterna al magazzino" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "Non puoi rendere strutturale questa posizione di magazzino perché alcuni elementi di magazzino sono già posizionati al suo interno!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "L'articolo deve essere specificato" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "Gli articoli di magazzino non possono essere ubicati in posizioni di magazzino strutturali!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "Non è possibile creare un elemento di magazzino per articoli virtuali" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "La quantità deve essere 1 per elementi con un numero di serie" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Il numero di serie non può essere impostato se la quantità è maggiore di 1" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "L'elemento non può appartenere a se stesso" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "L'elemento deve avere un riferimento di costruzione se is_building=True" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "Il riferimento di costruzione non punta allo stesso oggetto dell'articolo" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Elemento di magazzino principale" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Articolo base" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Seleziona un fornitore articolo corrispondente per questo elemento di magazzino" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "Dove si trova questo articolo di magazzino?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Imballaggio di questo articolo di magazzino è collocato in" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Installato In" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "Questo elemento è stato installato su un altro elemento?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Numero di serie per questo elemento" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Codice lotto per questo elemento di magazzino" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Quantità disponibile" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Genera Costruzione" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Costruisci per questo elemento di magazzino" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Origina Ordine di Acquisto" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Ordine d'acquisto per questo articolo in magazzino" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "Destinazione Ordine di Vendita" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Data di scadenza per l'elemento di magazzino. Le scorte saranno considerate scadute dopo questa data" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Elimina al esaurimento" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Cancella questo Elemento di Magazzino quando la giacenza è esaurita" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "Prezzo di acquisto unitario al momento dell’acquisto" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "Convertito in articolo" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "L'articolo non è impostato come tracciabile" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "La quantità deve essere un numero intero" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "I numeri di serie devono essere forniti come elenco" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "La quantità non corrisponde ai numeri di serie" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "L'elemento di magazzino è stato assegnato a un ordine di vendita" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "L'elemento di magazzino è installato in un altro elemento" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "L'elemento di magazzino contiene altri elementi" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "L'elemento di magazzino è stato assegnato a un cliente" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "L'elemento di magazzino è attualmente in produzione" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "Il magazzino serializzato non può essere unito" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Duplica elementi di magazzino" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Gli elementi di magazzino devono riferirsi allo stesso articolo" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Gli elementi di magazzino devono riferirsi allo stesso articolo fornitore" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "I codici di stato dello stock devono corrispondere" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Le giacenze non possono essere spostate perché non disponibili" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Note d'ingresso" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Il valore deve essere fornito per questo test" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "L'allegato deve essere caricato per questo test" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Risultato Test" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Test valore output" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Risultato della prova allegato" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Note del test" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Utenti" msgid "Select which users are assigned to this group" msgstr "Selezionare quali utenti sono assegnati a questo gruppo" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Informazioni personali" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Permessi" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Date Importanti" diff --git a/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po index 8ba61f7e06..674691eec6 100644 --- a/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "APIエンドポイントが見つかりません" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "無効なアイテムリスト" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "提供されたフィルタが無効" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "ユーザーにこのモデルを表示する権限がありません" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "{original}を{unit}に変換できませんでした。" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "数量コードが無効です" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "無効な10進数値" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "値 '{name}' はパターン形式で表示されません" msgid "Provided value does not match required pattern: " msgstr "指定された値が必要なパターンと一致しません: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "一度に1000以上のアイテムをシリアライズすることはできません。" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "シリアル番号は空です" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "重複シリアル" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "無効なグループです:{group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "グループ範囲 {group} が許容数量を超過 ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "シリアル番号が見つかりません" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "一意のシリアル番号の数({len(serials)})は数量({expected_quantity})と一致する必要があります。" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "この値からHTMLタグを削除" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "データに禁止されているマークダウン・コンテンツが含まれています。" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "無効な選択です" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "お名前" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "説明" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "説明 (オプション)" @@ -470,11 +470,11 @@ msgstr "サーバーエラー" msgid "An error has been logged by the server." msgstr "サーバーによってエラーが記録されました。" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "有効な数字でなければなりません" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "通貨" @@ -522,28 +522,29 @@ msgstr "超過分は100%を超えてはなりません" msgid "Invalid value for overage" msgstr "超過分の無効な値" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "注文ステータス" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "親ビルド" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "バリアントを含む" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "バリアントを含む" msgid "Part" msgstr "パーツ" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "カテゴリ" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "祖先ビルド" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "担当" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "発行者" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "割り当て" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "作成前" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "の後に作成されました。" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "目標期日" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "以降の目標日" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "完成前" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "終了後" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "ツリーを除く" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "削除するには、ビルドをキャンセルする必要があります。" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "消耗品" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "オプション" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "アセンブリ" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "追跡" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "テスト可能" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "受注残高" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "割り当てられた" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "利用可能" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "組立注文" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "組立注文" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "アセンブリBOMが検証されていません" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "非アクティブな部品にビルドオーダーを作成できません。" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "ロックされていない部品にビルドオーダーを作成できません。" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "親ビルドの選択が無効" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "担当ユーザーまたはグループを指定する必要があります。" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "ビルドオーダー部品は変更できません" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "ビルド・オーダー・リファレンス" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "ビルド・オーダー・リファレンス" msgid "Reference" msgstr "参照" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "建築の簡単な説明(任意)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "このビルドが割り当てられる ビルドオーダー" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "製造する部品の選択" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "セールス・オーダー・リファレンス" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "このビルドが割り当てられる SalesOrder" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "ソース・ロケーション" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "このビルドで在庫を取得する場所を選択します(任意の在庫場所から取得する場合は空白のままにしてください)。" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "目的地" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "完成したアイテムの保管場所を選択" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "数量" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "構築するストックアイテムの数" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "完成品" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "完了した在庫アイテムの数" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "組立状況" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "ビルドステータスコード" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "バッチコード" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "このビルド出力のバッチコード" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "作成日時" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "完成目標日" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "ビルド完了目標日。この日付を過ぎると、ビルドは期限切れになります。" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "完了日" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "完了者" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "発行者" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "このビルドオーダーを発行したユーザー" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "責任" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "このビルドオーダーを担当するユーザーまたはグループ" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "外部リンク" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "外部 サイト へのリンク" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "組立優先度" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "建設順序の優先順位" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "プロジェクトコード" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "プロジェクトコード" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "ビルドの割り当てを完了するタスクのオフロードに失敗しました。" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "ビルドオーダー{build}が完了しました" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "建設発注が完了しました" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "追跡可能な部品については、シリアル番号の提示が必要です。" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "ビルド出力が指定されていません" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "ビルド出力はすでに完了しています" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "ビルド出力がビルド順序と一致しません" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "数量はゼロより大きくなければなりません" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "数量が出力数量を上回ることはできません" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "ビルド出力 {serial} は、必要なすべてのテストに合格していません。" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "ビルドオーダーラインアイテム" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "ビルドオブジェクト" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "ビルドオブジェクト" msgid "Quantity" msgstr "数量" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "注文数量" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "ビルド項目は、ビルド出力を指定する必要があります。" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "割当数量({q})は在庫可能数量({a})を超えてはなりません。" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "在庫が過剰配分" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "割当数量はゼロより大きくなければなりません" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "シリアル在庫の場合、数量は1でなければなりません。" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "選択された在庫品目が部品表に一致しません。" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "在庫商品" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "ソース在庫品" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "建設に割り当てる在庫量" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "インストール" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "仕向け地在庫品" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "シリアル番号が一致する必要なアイテムを自動的に割り当て" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "以下のシリアル番号は既に存在するか、無効です。" @@ -1107,8 +1109,8 @@ msgstr "ビルドアウトプットを廃棄する理由" msgid "Location for completed build outputs" msgstr "完成した建造物のアウトプットの場所" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "部品表 部品名" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "サプライヤー" @@ -1313,7 +1315,7 @@ msgstr "ビルドリファレンス" msgid "Part Category Name" msgstr "部品分類名" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "追跡可能" @@ -1321,12 +1323,12 @@ msgstr "追跡可能" msgid "Inherited" msgstr "継承" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "バリアントを許可" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "BOMアイテム" @@ -1389,11 +1391,11 @@ msgstr "完了" msgid "Stock required for build order" msgstr "受注生産に必要な在庫" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "期限切れ注文" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "ビルドオーダー{bo}は現在期限切れです" @@ -1485,8 +1487,8 @@ msgstr "キー文字列は一意でなければなりません。" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "ユーザー" msgid "Price break quantity" msgstr "価格破壊数量" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "価格" @@ -1519,7 +1521,7 @@ msgstr "このウェブフックの名前" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "有効" @@ -1598,8 +1600,8 @@ msgstr "タイトル" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "リンク" @@ -1624,7 +1626,7 @@ msgstr "既読" msgid "Was this news item read?" msgstr "このニュースは読まれましたか?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "定義" msgid "Unit definition" msgstr "ユニットの定義" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "添付ファイル" @@ -1716,7 +1718,7 @@ msgstr "ファイルサイズ" msgid "File size in bytes" msgstr "ファイルサイズ(バイト" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "添付ファイルに指定されたモデルタイプが無効です" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "ビジネスロジックでこのカスタムステートに等しいステート論理キー" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "値" @@ -1814,7 +1816,7 @@ msgstr "論理キーは、参照ステータスの論理キーに含まれてい msgid "Name must be different from the names of the reference status" msgstr "リファレンス・ステータスの名前とは異なっていなければならない。" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "セレクションリスト" @@ -1830,7 +1832,7 @@ msgstr "選択リストの名前" msgid "Description of the selection list" msgstr "選択リストの説明" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "ロック中" @@ -1914,7 +1916,7 @@ msgstr "この選択リストはアクティブですか?" msgid "Barcode Scan" msgstr "バーコードスキャン" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "データ" @@ -1938,7 +1940,7 @@ msgstr "バーコードスキャンの日時" msgid "URL endpoint which processed the barcode" msgstr "バーコードを処理したURLエンドポイント" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "コンテキスト" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "バーコードスキャンによるレスポンスデータ" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "結果" @@ -1963,113 +1965,113 @@ msgstr "結果" msgid "Was the barcode scan successful?" msgstr "バーコードスキャンは成功しましたか?" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "新しい {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "新しい注文が作成され、お客様に割り当てられました。" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} キャンセル" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "あなたに割り当てられた注文がキャンセルされました。" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "受領品目" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "発注書と照らし合わせて商品を受領" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "返品注文に反して商品が届いた場合" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "プラグインで発生したエラー" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "走行中" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "保留タスク" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "スケジュールされたタスク" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "失敗したタスク" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "タスクID" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "ユニークなタスクID" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "ロック" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "ロック時間" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "タスク名" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "関数" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "機能名" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "引数" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "タスク引数" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "キーワード論争" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "タスクキーワード引数" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "ファイル名" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "モデルタイプ" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "このモデルの添付ファイルを作成または編集する権限がありません。" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "選択リストがロックされています" @@ -2409,8 +2411,8 @@ msgstr "カテゴリー・パラメーター・テンプレートのコピー" msgid "Copy category parameter templates when creating a part" msgstr "部品作成時のカテゴリー・パラメーター・テンプレートのコピー" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "テンプレート" @@ -2423,7 +2425,7 @@ msgstr "パーツはデフォルトのテンプレートです" msgid "Parts can be assembled from other components by default" msgstr "パーツはデフォルトで他のコンポーネントから組み立てることができます" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "コンポーネント" @@ -2432,7 +2434,7 @@ msgstr "コンポーネント" msgid "Parts can be used as sub-components by default" msgstr "パーツはデフォルトでサブコンポーネントとして使用できます" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "購入可能" @@ -2440,7 +2442,7 @@ msgstr "購入可能" msgid "Parts are purchaseable by default" msgstr "パーツはデフォルトで購入可能です" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "販売可能" @@ -2452,7 +2454,7 @@ msgstr "パーツはデフォルトで販売可能です" msgid "Parts are trackable by default" msgstr "パーツはデフォルトで追跡可能です" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "バーチャル" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "レポート生成時に発生するエラーのログ" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "ページサイズ" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "検索クエリは、単語全体が一致した結果を返します。" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "フォームに数量を表示" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "いくつかのフォームで利用可能な部品の数量を表示" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "エスケープキーでフォームを閉じる" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "モーダルフォームを閉じるには、エスケープキーを使用します。" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "固定ナビバー" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "ナビバーの位置は画面上部に固定されます。" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "日付フォーマット" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "日付の表示形式" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "部品スケジューリング" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "部品スケジュール情報の表示" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "部品在庫" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "部品在庫情報の表示(在庫管理機能が有効な場合)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "テーブル文字列の長さ" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "テーブルビューに表示される文字列の長さの上限" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "エラー・レポートの受信" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "システムエラーの通知を受信" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "最後の中古印刷機" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "ユーザーの最後に使用した印刷機を保存" @@ -3530,7 +3540,7 @@ msgstr "連絡先電話番号" msgid "Contact email address" msgstr "連絡先メールアドレス" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "お問い合わせ" @@ -3575,7 +3585,7 @@ msgstr "この会社は部品を製造しているのですか?" msgid "Default currency used for this company" msgstr "この会社で使用されるデフォルト通貨" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "住所" @@ -3672,7 +3682,7 @@ msgstr "住所情報へのリンク(外部)" msgid "Manufacturer Part" msgstr "メーカー・パーツ" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "ベース部" @@ -3714,7 +3724,7 @@ msgstr "パラメータ名" msgid "Parameter value" msgstr "パラメータ値" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "単位" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "リンクされたメーカー部品は、同じベース部品を参照する必要があります。" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "サプライヤーの部品説明" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "サプライヤーの部品説明" msgid "Note" msgstr "備考" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "基本料金" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "ミニマムチャージ(例:仕入れ手数料)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "パッケージング" @@ -3802,7 +3812,7 @@ msgstr "パック数量" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "1パックに供給される総量。単品の場合は空のままにしてください。" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "複数" @@ -3978,7 +3988,7 @@ msgstr "元の行データ" msgid "Errors" msgstr "エラー" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "有効" @@ -4078,7 +4088,7 @@ msgstr "各ラベルの印刷部数" msgid "Connected" msgstr "接続済み" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "不明" @@ -4166,101 +4176,101 @@ msgstr "マシン構成" msgid "Config type" msgstr "設定タイプ" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "注文参照" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "並外れた" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "プロジェクトコード" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "作成者" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "作成前" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "の後に作成されました。" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "目標期日" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "以降の目標日" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "価格" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "完成前" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "終了後" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "注文" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "注文完了" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "内部パーツ" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "注文保留" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "完了" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "出荷あり" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "注文" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "注文" msgid "Sales Order" msgstr "セールスオーダー" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "リターンオーダー" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "合計金額" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "この注文の合計金額" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "注文通貨" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "この注文の通貨(会社のデフォルトを使用する場合は空白のままにしてください。)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "連絡先が選択した会社と一致しません" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "ご注文内容(任意)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "この注文のプロジェクトコードを選択してください。" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "外部ページへのリンク" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "終了日に達したら" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "お届け予定日この期日を過ぎますと延滞となります。" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "発行日" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "オーダー発行日" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "この注文を担当するユーザーまたはグループ" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "本注文に関する連絡先" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "本注文の会社住所" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "注文参照" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "発注状況" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "注文元の会社" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "サプライヤー・リファレンス" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "サプライヤー注文参照コード" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "受信" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "注文完了日" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "目的地" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "入荷商品のお届け先" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "部品サプライヤーは、POサプライヤーと一致する必要があります。" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "数量は正の数でなければなりません。" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "顧客" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "販売先" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "販売注文状況" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "お客様リファレンス" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "顧客注文参照コード" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "出荷日" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "出荷元" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "注文はすでに完了しています。" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "注文はすでにキャンセルされました" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "未完了の注文にのみ完了マークを付けることができます。" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "出荷に不備があるため、注文を完了できません。" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "割り当てに不備があるため、注文を完了できません。" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "不完全な項目があるため、注文を完了できません。" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "品目数量" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "行項目参照" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "項目" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "この行項目の目標期日(注文の目標期日を使用する場合は空白のままにしてください。)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "行項目の説明(オプション)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "この行の補足説明" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "単価" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "発注書項目" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "サプライヤーの部品はサプライヤーと一致しなければなりません。" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "サプライヤー" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "受信" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "受領品目数" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "購入金額" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "購入単価" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "発注書追加行" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "販売注文明細" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "仮想部品を販売注文に割り当てることはできません" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "販売可能な部品のみを販売オーダーに割り当てることができます。" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "セール価格" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "販売単価" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "発送済み" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "出荷数量" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "販売注文の出荷" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "出荷日" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "配達日" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "貨物の引渡日" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "チェック済み" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "この貨物をチェックしたユーザー" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "発送" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "出荷番号" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "追跡番号" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "貨物追跡情報" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "請求書番号" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "関連する請求書の参照番号" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "発送済み" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "出荷品目に割り当てられた在庫がありません" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "セールスオーダー追加ライン" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "販売注文の割り当て" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "在庫アイテムが割り当てられていません" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "在庫品を別部品のラインに割り当てることはできません。" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "部品のないラインに在庫を割り当てることはできません。" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "割当数量が在庫数量を超えることはできません" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "シリアル化された在庫品の場合、数量は1でなければなりません。" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "販売注文と出荷が一致しません" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "出荷が販売注文と一致しません" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "ライン" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "販売注文の出荷参照" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "アイテム" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "割り当てるストックアイテムを選択" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "在庫割当数量の入力" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "リターンオーダー参照" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "返品元の会社" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "返品状況" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "返品注文項目" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "在庫品の指定が必要です。" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "返品数量が在庫数量を超える場合" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "返品数量はゼロより大きくなければなりません。" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "シリアル化されたストックアイテムの数量が無効です。" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "お客様から返品する商品を選択" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "受領日" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "この返品商品が届いた日付" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "転帰" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "この項目の成果" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "この品目の返品または修理に関連する費用" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "リターンオーダー追加ライン" @@ -4808,7 +4820,7 @@ msgstr "同じ品目、同じ仕向け地、同じ日付の品目を1つの品 msgid "SKU" msgstr "SKU" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "内部部品番号" @@ -4848,7 +4860,7 @@ msgstr "受取商品の配送先選択" msgid "Enter batch code for incoming stock items" msgstr "入荷在庫品のバッチコード入力" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "有効期限" @@ -5005,905 +5017,914 @@ msgstr "返金" msgid "Reject" msgstr "拒否" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "期限切れ発注書" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "発注書{po}は現在期限切れです" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "期限切れ販売注文" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "セールスオーダー{so}は現在期限切れです。" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "スター付き" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "星の数で絞り込む" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "深さ" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "カテゴリの深さでフィルタリング" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "最多メンバーレベル" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "トップレベルカテゴリーによるフィルタリング" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "カスケード表示" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "フィルタリング結果にサブカテゴリーを含めることができます。" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "親" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "親カテゴリーによる絞り込み" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "指定したカテゴリの下にあるサブカテゴリを除外します。" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "実績あり" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "発注書" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "販売注文" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "受注生産在庫" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "受注生産に必要な在庫" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "部品表全体の検証" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "このオプションを選択する必要があります。" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "改訂版" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "改定あり" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "BOM有効" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "組み立て部分はテスト可能" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "コンポーネント部分はテスト可能" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "用途" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "パーツカテゴリ" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "パーツカテゴリ" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "デフォルトの場所" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "このカテゴリの部品のデフォルトの場所" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "構造に関するパターン" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "部品は構造カテゴリーに直接割り当てることはできませんが、子カテゴリーに割り当てることはできます。" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "デフォルトキーワード" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "このカテゴリの部品のデフォルトキーワード" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "アイコン" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "アイコン (オプション)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "いくつかの部品がすでに割り当てられているため、この部品カテゴリを構造化することはできません!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "パーツ" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "この部分はロックされているため削除できません" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "このパートはまだアクティブなので削除できません。" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "この部品はアセンブリで使用されているため、削除できません。" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "親部分の選択が無効" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "パート'{self}'は'{parent}'(再帰的)のBOMでは使用できません。" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "パート'{parent}'は'{self}'のBOMで使用(再帰的)" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPNは正規表現パターン{pattern}に一致しなければなりません。" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "パートはそれ自体の改訂にはなりえません" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "すでにリビジョンとなっている部分のリビジョンを作成することはできません。" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "リビジョンコードの指定が必要" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "修正が許されるのは組立部品のみ" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "テンプレート部品のリビジョンを作成できません" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "親部品は同じテンプレートを指す必要があります。" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "このシリアル番号の在庫品はすでに存在します" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "パート設定でIPNの重複が許可されていません。" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "重複する部品リビジョンが既に存在します。" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "この名前、IPN、リビジョンを持つ部品は既に存在します。" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "部品を構造部品のカテゴリーに割り当てることはできません!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "部品名" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "テンプレート" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "この部品はテンプレート部品ですか?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "この部品は他の部品の変形ですか?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "変種" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "部品の説明(オプション)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "キーワード" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "検索結果での視認性を向上させる部分キーワード" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "パーツカテゴリ" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "即時支払通知" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "部品のリビジョンまたはバージョン番号" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "リビジョン" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "この部品は他の部品の改訂版ですか?" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "改訂版" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "この商品は通常どこに保管されていますか?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "デフォルト・サプライヤー" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "サプライヤーのデフォルト部品" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "デフォルトの有効期限" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "この部品の在庫品の有効期限(日単位" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "最小在庫" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "最低許容在庫量" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "この部品の単位" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "この部品は他の部品から作ることができますか?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "この部品を使って他の部品を作ることはできますか?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "このパーツはユニークなアイテムの追跡が可能ですか?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "この部品にテスト結果を記録することはできますか?" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "この部品は外部のサプライヤーから購入できますか?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "この部品は顧客に販売できますか?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "この部分はアクティブですか?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "ロックされた部分は編集できません" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "これは、ソフトウェア製品やライセンスなどの仮想部品ですか?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "BOMチェックサム" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "保存されたBOMのチェックサム" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "BOMチェック済み" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "BOMチェック日" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "作成ユーザー" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "この部分の責任者" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "最後のストックテイク" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "複数販売" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "価格計算のキャッシュに使用される通貨" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "最小BOMコスト" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "構成部品の最低コスト" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "最大BOMコスト" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "構成部品の最大コスト" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "最低購入価格" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "過去の最低購入価額" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "最大購入費用" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "過去の最高購入価格" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "最低社内価格" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "社内価格ブレークに基づく最低コスト" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "社内最高価格" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "社内価格ブレークに基づく最大コスト" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "最低供給価格" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "外部サプライヤーからの部品の最低価格" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "サプライヤー最高価格" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "外部サプライヤーからの部品の最高価格" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "最小バリアントコスト" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "バリアントパーツの最小コストの計算" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "最大バリアントコスト" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "バリアント部品の最大コストの計算" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "最低料金" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "最低コストのオーバーライド" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "最大コスト" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "最大コストのオーバーライド" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "総合的な最小コストの計算" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "総合最大コストの計算" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "最低販売価格" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "価格破壊に基づく最低販売価格" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "最高販売価格" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "価格破壊に基づく最高販売価格" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "最低販売価格" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "過去の最低売却価格" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "最大販売価格" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "過去の最高売却価格" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "ストックテイク用部品" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "個数" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "棚卸時の個別在庫数" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "ストックテイク時の在庫可能量" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "日付" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "ストックテイク実施日" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "その他の注意事項" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "このストックテイクを実施したユーザー" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "最低在庫コスト" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "手元在庫の最低見積原価" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "最大在庫コスト" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "手元在庫の最大見積原価" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "レポート" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "ストックテイクレポートファイル(社内で作成)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "部品数" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "ストックテーク対象部品数" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "このストックテイク・レポートを依頼したユーザー" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "パーツセール価格" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "部品試験テンプレート" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "無効なテンプレート名 - 英数字を1文字以上含む必要があります。" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "選択肢はユニークでなければなりません" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "テストテンプレートは、テスト可能な部分に対してのみ作成できます。" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "同じキーを持つテスト・テンプレートがパートに既に存在します。" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "試験名" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "テストの名前を入力します。" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "テストキー" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "テストの簡易キー" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "試験内容" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "このテストの説明を入力してください。" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "有効" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "このテストは有効ですか?" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "必須" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "このテストは合格するために必要ですか?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "価値が必要" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "このテストは、テスト結果を追加する際に値を必要としますか?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "アタッチメントが必要" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "この試験では、試験結果を追加する際にファイルの添付が必要ですか。" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "選択肢" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "このテストで有効な選択肢(カンマ区切り)" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "部品パラメータテンプレート" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "チェックボックスのパラメータに単位を指定することはできません。" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "チェックボックスパラメータに選択肢を持たせることはできません。" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "パラメータ・テンプレート名は一意でなければなりません。" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "パラメータ名" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "このパラメータの物理単位" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "パラメータの説明" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "チェックボックス" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "このパラメータはチェックボックスですか?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "このパラメータの有効な選択肢(カンマ区切り)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "このパラメータの選択リスト" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "部品パラメータ" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "パラメータは変更できません。" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "パラメータ値の選択が無効" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "親部分" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "パラメータテンプレート" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "パラメータ値" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "部品分類パラメータテンプレート" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "初期値" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "パラメータのデフォルト値" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "BOMアイテムは変更できません - アセンブリがロックされています。" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "BOM アイテムは変更できません - バリアントアセンブリがロックされています。" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "親部品を選択" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "サブパート" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "BOMで使用する部品を選択" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "このBOMアイテムのBOM数量" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "この部品表はオプションです。" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "このBOMアイテムは消耗品です。" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "超過分" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "推定建設廃棄物量(絶対値またはパーセンテージ)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "BOMアイテムリファレンス" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "BOMアイテムノート" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "チェックサムi" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "BOMラインのチェックサム" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "検証済み" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "このBOMアイテムは検証済みです" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "継承" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "この BOM アイテムは、バリアントパーツの BOM に継承されます。" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "このBOMアイテムには、バリアントパーツのストックアイテムを使用できます。" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "数量は追跡可能な部品の場合、整数値でなければなりません。" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "サブパーツの指定が必要" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "BOMアイテム代替" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "代用部品はマスター部品と同じにすることはできません。" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "親BOMアイテム" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "代用部品" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "パート #1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "パート #2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "関連部品を選択" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "この関係について" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "部品とそれ自身との間に部品関係を作ることはできません。" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "重複する関係が既に存在します。" @@ -6315,83 +6336,83 @@ msgstr "アクションが指定されていません" msgid "No matching action found" msgstr "一致するアクションが見つかりませんでした" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "バーコードデータが見つかりません" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "バーコードデータとの一致が確認されました。" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "モデルはサポートされていません" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "モデルインスタンスが見つかりません" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "バーコードが既存のアイテムと一致" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "一致する部品データが見つかりません" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "一致するサプライヤー部品は見つかりませんでした" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "一致するサプライヤー部品が複数見つかりました" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "バーコードデータに一致するプラグインは見つかりませんでした" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "適合部品" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "商品はすでに受領済みです。" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "サプライヤーのバーコードに一致するプラグインがない" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "複数の一致する行項目が見つかりました" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "該当する項目が見つかりません" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "販売注文はありません" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "バーコードが既存の在庫品と一致しません" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "在庫品目が行品目と一致しません" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "在庫不足" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "販売注文に割り当てられた在庫品目" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "情報が不足しています" @@ -6834,7 +6855,7 @@ msgstr "ボーダー" msgid "Print a border around each label" msgstr "各ラベルの周囲に枠線を印刷します。" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "ランドスケープ" @@ -7011,17 +7032,17 @@ msgstr "方法" msgid "No author found" msgstr "著者は見つかりませんでした" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "プラグイン'{p}'は現在のInvenTreeバージョン{v}と互換性がありません。" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "プラグインには少なくともバージョン {v} が必要です。" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "プラグインに必要なバージョンは最大で{v}です。" @@ -7258,116 +7279,116 @@ msgstr "リーガル" msgid "Letter" msgstr "文字" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "この名前のテンプレートファイルは既に存在します。" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "テンプレート名" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "テンプレート説明" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "リビジョン番号(自動インクリメント)" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "プリントのモデルに装着" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "印刷時に、リンクされたモデルインスタンスに対してレポート出力を添付ファイルとして保存" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "ファイル名パターン" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "ファイル名生成パターン" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "テンプレートが有効" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "テンプレートの対象モデルタイプ" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "フィルター" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "テンプレートクエリフィルタ(key=valueペアのカンマ区切りリスト)" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "テンプレートファイル" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "PDFレポートのページサイズ" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "レポートを横向きにレンダリング" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "幅 [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "ラベル幅(mm単位)" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "高さ [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "ラベルの高さ(mm単位)" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "スニペット" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "レポートスニペットファイル" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "スニペットファイルの説明" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "資産" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "レポート資産ファイル" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "アセットファイルの説明" @@ -7449,7 +7470,7 @@ msgstr "合計" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "シリアル番号" @@ -7639,313 +7660,313 @@ msgstr "サプライヤー部品にはパックサイズが定義されていま msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "追跡不可能な部品については、シリアル番号は提供できません。" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "在庫ロケーションタイプ" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "ストックロケーションの種類" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "アイコンが設定されていないすべての場所のデフォルトアイコン (オプション)" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "ストックロケーション" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "在庫場所" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "所有者" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "所有者を選択" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "ストックアイテムは、構造的なストックロケーションに直接配置されることはありませんが、子ロケーションに配置されることはあります。" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "外部" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "これは外部の在庫場所です。" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "ロケーションタイプ" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "このロケーションのロケーションタイプ" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "いくつかのストックアイテムがすでにストックロケーションに配置されているため、このストックロケーションを構造化することはできません!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "部品の指定が必要" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "在庫品は、構造的な在庫場所に配置することはできません!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "仮想部品にストックアイテムを作成できません" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "パートタイプ('{self.supplier_part.part}')は{self.part}でなければなりません。" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "シリアル番号のある商品は数量が1でなければなりません。" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "数量が1以上の場合、シリアル番号は設定できません。" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "アイテムはそれ自身に属することはできません" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "is_building=Trueの場合、アイテムはビルド・リファレンスを持っていなければならない。" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "ビルド参照が同じ部品オブジェクトを指していません。" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "親株式" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "ベース部" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "この在庫品に一致するサプライヤー部品を選択してください" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "この在庫品はどこにありますか?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "この在庫品は以下の梱包で保管されています。" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "設置場所" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "このアイテムは他のアイテムにインストールされていますか?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "この商品のシリアル番号" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "このストックアイテムのバッチコード" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "在庫数" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "ソースビルド" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "このストックアイテムのビルド" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "消費者" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "このストックアイテムを消費したビルドオーダー" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "発注元" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "この在庫商品の購入注文" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "販売先オーダー" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "在庫品の有効期限。この日を過ぎると在庫は期限切れとなります。" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "枯渇時に削除" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "在庫がなくなったら、このストックアイテムを削除します。" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "購入時の単品購入価格" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "パートに変換" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "部品が追跡可能に設定されていません" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "数量は整数でなければなりません。" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "数量は在庫数 ({self.quantity}) を超えてはなりません。" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "シリアル番号はリストとして提供されなければなりません" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "数量がシリアル番号と一致しません" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "テストテンプレートが存在しません" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "在庫商品が販売注文に割り当てられました" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "ストックアイテムが他のアイテムに装着されている場合" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "在庫商品には他の商品が含まれています。" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "在庫商品が顧客に割り当てられました" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "在庫品は現在生産中です。" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "連番在庫の統合はできません" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "在庫品の重複" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "在庫品目は同じ部品を参照してください。" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "在庫品は同じサプライヤーの部品を参照する必要があります。" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "在庫状況コードが一致していること" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "在庫がないため移動できません。" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "ストックアイテムのトラッキング" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "記入上の注意" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "在庫品テスト結果" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "このテストには値を指定する必要があります。" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "このテストには添付ファイルをアップロードする必要があります。" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "このテストでは無効な値です。" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "試験結果" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "テスト出力値" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "試験結果添付" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "テストノート" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "テストステーション" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "試験が実施された試験ステーションの識別子。" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "開始" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "テスト開始のタイムスタンプ" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "修了済み" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "テスト終了のタイムスタンプ" @@ -8401,6 +8422,7 @@ msgstr "保留中のデータベース移行があり、注意が必要です。 #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "ユーザー" msgid "Select which users are assigned to this group" msgstr "このグループに割り当てるユーザーを選択します" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "次のユーザーは複数のグループに所属しています。" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "個人情報" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "許可" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "重要な日付" diff --git a/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po index 4bb64ac75d..8d28f9c8ff 100644 --- a/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po index c088e51938..48e7cbe40c 100644 --- a/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Lithuanian\n" "Language: lt_LT\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po index 6b173d7c62..673cc71a2e 100644 --- a/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Latvian\n" "Language: lv_LV\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API galapunkts nav atrasts" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Lietotājam nav atļaujas, lai apskatītu šo modeli" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Nevarēja konvertēt {original} par {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Norādītais daudzums nav derīgs" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Vērtība '{name}' neparādās vajadzīgajā formātā" msgid "Provided value does not match required pattern: " msgstr "Norādītā vērtība neatbilst nepieciešamajam formātam: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Tukša sērijas numura rinda" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Atkārtojas sērijas numurs" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Grupas diapazons {group} pārsniedz pieļaujamo daudzumu ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Netika atrasts neviens sērijas numurs" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Unikālo sērijas numuru skaitam ({len(serials)}) jāatbilst daudzumam ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Noņemiet HTML tagus no šīs vērtības" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po index 67a60e4141..34969f10b5 100644 --- a/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:41\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "Schakel tweestapsverificatie in voordat je iets anders kunt doen." -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API eindpunt niet gevonden" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "Lijst met items of filters moet worden opgegeven voor bulk bewerking" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "Items moeten worden opgegeven als een lijst" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "Ongeldige items lijst verstrekt" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "Filters moeten als woordenboek worden opgegeven" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Ongeldige filters opgegeven" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "Geen items die overeenkomen met de opgegeven criteria" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Gebruiker heeft geen rechten om dit model te bekijken" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "{original} kon niet worden omgezet naar {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Ongeldige hoeveelheid ingevoerd" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Ongeldige decimale waarde" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Waarde '{name}' verschijnt niet in patroonformaat" msgid "Provided value does not match required pattern: " msgstr "Opgegeven waarde komt niet overeen met vereist patroon: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "Kan niet meer dan 1000 items tegelijk serienummers geven." -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Leeg serienummer" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Duplicaat serienummer" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Ongeldige groep: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Groepsbereik {group} overschrijdt toegestane hoeveelheid ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Geen serienummers gevonden" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Hoeveelheid van unieke serienummers ({s}) moet overeenkomen met de hoeveelheid ({q})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Verwijder HTML tags van deze waarde" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "Gegevens bevatten verboden markdown inhoud" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Ongeldige keuze" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Naam" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Omschrijving" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Omschrijving (optioneel)" @@ -470,11 +470,11 @@ msgstr "Serverfout" msgid "An error has been logged by the server." msgstr "Er is een fout gelogd door de server." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Moet een geldig nummer zijn" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Valuta" @@ -522,28 +522,29 @@ msgstr "Overschot mag niet groter zijn dan 100%" msgid "Invalid value for overage" msgstr "Ongeldige waarde voor overschot" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Status van bestelling" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Bovenliggende Productie" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "Inclusief varianten" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "Inclusief varianten" msgid "Part" msgstr "Onderdeel" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Categorie" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Voorouderlijke bouw" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Toegewezen aan mij" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Uitgegeven door" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Toegewezen aan" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "Gemaakt voor" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "Gemaakt na" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "Heeft een startdatum" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "Vervaldatum voor" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "Vervaldatum na" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "Heeft doel datum" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "Doel datum voor" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "Doel datum na" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "Voltooid voor" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "Voltooid na" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "Min. datum" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "Max. datum" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "Boomstructuur uitsluiten" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Productie moet geannuleerd worden voordat het kan worden verwijderd" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Verbruiksartikelen" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Optioneel" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Samenstelling" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Gevolgd" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Testbaar" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "Openstaande order" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Toegewezen" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Beschikbaar" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Productieorder" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Productieorders" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Assemblage stuklijst is niet gevalideerd" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "Bouw bestelling kan niet worden aangemaakt voor een inactief onderdeel" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "Maken opdracht kan niet worden gemaakt voor een ontgrendeld onderdeel" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Ongeldige keuze voor bovenliggende productie" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Verantwoorde gebruiker of groep moet worden opgegeven" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Bouworder onderdeel kan niet worden gewijzigd" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "Doeldatum moet na startdatum zijn" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Productieorderreferentie" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Productieorderreferentie" msgid "Reference" msgstr "Referentie" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Korte beschrijving van de build (optioneel)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Productieorder waar deze productie aan is toegewezen" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Selecteer onderdeel om te produceren" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Verkooporder Referentie" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Verkooporder waar deze productie aan is toegewezen" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Bronlocatie" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Selecteer de locatie waar de voorraad van de productie vandaan moet komen (laat leeg om vanaf elke standaard locatie te nemen)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Bestemmings Locatie" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Selecteer locatie waar de voltooide items zullen worden opgeslagen" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Productiehoeveelheid" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Aantal voorraaditems om te produceren" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Voltooide voorraadartikelen" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Aantal voorraadartikelen die zijn voltooid" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Productiestatus" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Productiestatuscode" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Batchcode" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Batchcode voor deze productieuitvoer" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Aanmaakdatum" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "Bouw start datum" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "Geplande startdatum voor deze bestelling" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Verwachte opleveringsdatum" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Doeldatum voor productie voltooiing. Productie zal achterstallig zijn na deze datum." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Opleveringsdatum" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "voltooid door" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Uitgegeven door" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Gebruiker die de productieorder heeft gegeven" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Verantwoordelijke" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Gebruiker of groep verantwoordelijk voor deze bouwopdracht" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Externe Link" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Link naar externe URL" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Bouw prioriteit" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Prioriteit van deze bouwopdracht" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Project code" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Project code voor deze build order" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Verwijderen van taak om toewijzingen te voltooien mislukt" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Productieorder {build} is voltooid" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Een productieorder is voltooid" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Serienummers moeten worden opgegeven voor traceerbare onderdelen" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Geen productie uitvoer opgegeven" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Productie uitvoer is al voltooid" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Productuitvoer komt niet overeen met de Productieorder" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Hoeveelheid moet groter zijn dan nul" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Hoeveelheid kan niet groter zijn dan aantal" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Build output {serial} heeft niet alle vereiste tests doorstaan" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Bouw order regel item" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Bouw object" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Bouw object" msgid "Quantity" msgstr "Hoeveelheid" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Vereiste hoeveelheid voor bouwopdracht" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Productieartikel moet een productieuitvoer specificeren, omdat het hoofdonderdeel gemarkeerd is als traceerbaar" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Toegewezen hoeveelheid ({q}) mag de beschikbare voorraad ({a}) niet overschrijden" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Voorraad item is te veel toegewezen" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Toewijzing hoeveelheid moet groter zijn dan nul" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Hoeveelheid moet 1 zijn voor geserialiseerde voorraad" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Geselecteerde voorraadartikelen komen niet overeen met de BOM-regel" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Voorraadartikel" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Bron voorraadartikel" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Voorraad hoeveelheid toe te wijzen aan productie" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Installeren in" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Bestemming voorraadartikel" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Vereiste artikelen automatisch toewijzen met overeenkomende serienummers" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "De volgende serienummers bestaan al of zijn ongeldig" @@ -1107,8 +1109,8 @@ msgstr "Reden voor annulering van bouworder(s)" msgid "Location for completed build outputs" msgstr "Locatie van voltooide productieuitvoeren" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "BOM onderdeel naam" msgid "Build" msgstr "Bouwen" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Leveranciersonderdeel" @@ -1313,7 +1315,7 @@ msgstr "Bouw referentie" msgid "Part Category Name" msgstr "Naam categorie onderdeel" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Volgbaar" @@ -1321,12 +1323,12 @@ msgstr "Volgbaar" msgid "Inherited" msgstr "Overgenomen" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Varianten toestaan" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Stuklijstartikel" @@ -1389,11 +1391,11 @@ msgstr "Voltooid" msgid "Stock required for build order" msgstr "Voorraad vereist voor productieorder" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Achterstallige Productieorder" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "Productieorder {bo} is nu achterstallig" @@ -1485,8 +1487,8 @@ msgstr "Sleutelreeks moet uniek zijn" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Gebruiker" msgid "Price break quantity" msgstr "Prijs pauze hoeveelheid" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Prijs" @@ -1519,7 +1521,7 @@ msgstr "Naam van deze webhook" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Actief" @@ -1598,8 +1600,8 @@ msgstr "Titel" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Koppeling" @@ -1624,7 +1626,7 @@ msgstr "Gelezen" msgid "Was this news item read?" msgstr "Is dit nieuwsitem gelezen?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Definitie" msgid "Unit definition" msgstr "Definitie van eenheid" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Bijlage" @@ -1716,7 +1718,7 @@ msgstr "Bestandsgrootte" msgid "File size in bytes" msgstr "Bestandsgrootte in bytes" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "Ongeldig modeltype opgegeven voor bijlage" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "Staat logische sleutel die gelijk is aan deze staat in zakelijke logica" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Waarde" @@ -1814,7 +1816,7 @@ msgstr "Logische sleutel moet in de logische sleutels van de referentiestatus st msgid "Name must be different from the names of the reference status" msgstr "Naam moet anders zijn dan de namen van de referentie status" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "Keuzelijst" @@ -1830,7 +1832,7 @@ msgstr "Naam van de selectielijst" msgid "Description of the selection list" msgstr "Beschrijving van de selectielijst" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "Vergrendeld" @@ -1914,7 +1916,7 @@ msgstr "Is dit item in deze lijst actief?" msgid "Barcode Scan" msgstr "Barcode Scan" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Gegevens" @@ -1938,7 +1940,7 @@ msgstr "Datum en tijd van de streepjescode scan" msgid "URL endpoint which processed the barcode" msgstr "Adres eindpunt dat de streepjescode verwerkt" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Inhoud" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "Reactiegegevens van de barcode scan" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Resultaat" @@ -1963,113 +1965,113 @@ msgstr "Resultaat" msgid "Was the barcode scan successful?" msgstr "Was de barcode succesvol gescand?" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Nieuw: {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Een nieuwe order is aangemaakt en aan u toegewezen" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} is geannuleerd" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "Een bestelling die aan u is toegewezen is geannuleerd" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Ontvangen items" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Artikelen zijn ontvangen tegen een inkooporder" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "Items zijn ontvangen tegen een retour bestelling" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Fout veroorzaakt door plug-in" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Is actief" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Openstaande taken" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Geplande taken" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Mislukte taken" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "Taak ID" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Unieke taak ID" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Vergrendel" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Tijdstip van vergrendeling" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Naam van de taak" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Functie" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Functie naam" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Argumenten" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Taak argumenten" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Trefwoord argumenten" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Taak trefwoord argumenten" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Bestandsnaam" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "Model type" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "Gebruiker heeft geen toestemming om bijlagen voor dit model te maken of te bewerken" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "Lijst met selecties is vergrendeld" @@ -2409,8 +2411,8 @@ msgstr "Kopiëer Categorieparameter Sjablonen" msgid "Copy category parameter templates when creating a part" msgstr "Kopieer categorieparameter sjablonen bij het aanmaken van een onderdeel" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Sjabloon" @@ -2423,7 +2425,7 @@ msgstr "Onderdelen zijn standaard sjablonen" msgid "Parts can be assembled from other components by default" msgstr "Onderdelen kunnen standaard vanuit andere componenten worden samengesteld" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Onderdeel" @@ -2432,7 +2434,7 @@ msgstr "Onderdeel" msgid "Parts can be used as sub-components by default" msgstr "Onderdelen kunnen standaard worden gebruikt als subcomponenten" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Koopbaar" @@ -2440,7 +2442,7 @@ msgstr "Koopbaar" msgid "Parts are purchaseable by default" msgstr "Onderdelen kunnen standaard gekocht worden" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Verkoopbaar" @@ -2452,7 +2454,7 @@ msgstr "Onderdelen kunnen standaard verkocht worden" msgid "Parts are trackable by default" msgstr "Onderdelen kunnen standaard gevolgd worden" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtueel" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "Registreer fouten die optreden bij het genereren van rapporten" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Paginagrootte" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "Zoekopdrachten geven resultaat voor hele woord overeenkomsten" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Toon hoeveelheid in formulieren" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Hoeveelheid beschikbare onderdelen in sommige formulieren weergeven" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Escape-toets sluit formulieren" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Gebruik de Escape-toets om standaard formulieren te sluiten" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Vaste navigatiebalk" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "De navigatiebalk positie is gefixeerd aan de bovenkant van het scherm" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Datum formaat" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Voorkeursindeling voor weergave van datums" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Onderdeel planning" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Toon informatie voor het plannen van onderdelen" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Voorraadcontrole onderdeel" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Toon voorraadinformatie van onderdeel (als voorraadcontrole functionaliteit is ingeschakeld)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Tabel tekenreekslengte" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Maximale lengte voor tekenreeksen weergegeven in tabelweergaven" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "Toon laatste broodkruimel" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "Toon de huidige pagina in het kruimelpad" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Foutrapportages ontvangen" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "Meldingen ontvangen van systeemfouten" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "Laatst gebruikte printer" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "Sla de laatst gebruikte printer op voor een gebruiker" @@ -3530,7 +3540,7 @@ msgstr "Telefoonnummer voor contact" msgid "Contact email address" msgstr "Contact e-mailadres" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Contact" @@ -3575,7 +3585,7 @@ msgstr "Fabriceert dit bedrijf onderdelen?" msgid "Default currency used for this company" msgstr "Standaardvaluta die gebruikt wordt voor dit bedrijf" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Adres" @@ -3672,7 +3682,7 @@ msgstr "Link naar adres gegevens (extern)" msgid "Manufacturer Part" msgstr "Fabrikant onderdeel" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Basis onderdeel" @@ -3714,7 +3724,7 @@ msgstr "Parameternaam" msgid "Parameter value" msgstr "Parameterwaarde" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Eenheden" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderdeel" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Omschrijving leveranciersdeel" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Omschrijving leveranciersdeel" msgid "Note" msgstr "Opmerking" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "basisprijs" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimale kosten (bijv. voorraadkosten)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Verpakking" @@ -3802,7 +3812,7 @@ msgstr "Pakket hoeveelheid" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Totale hoeveelheid geleverd in één pakket. Laat leeg voor enkele afzonderlijke items." -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "meerdere" @@ -3978,7 +3988,7 @@ msgstr "Oorspronkelijke rij gegevens" msgid "Errors" msgstr "Fouten" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Geldig" @@ -4078,7 +4088,7 @@ msgstr "Aantal afdrukken voor elk label" msgid "Connected" msgstr "Verbonden" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Onbekend" @@ -4166,101 +4176,101 @@ msgstr "Machine configuratie" msgid "Config type" msgstr "Configuratie type" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Order Referentie" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "Uitmuntend" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "Heeft een projectcode" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Aangemaakt Door" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "Gemaakt vóór" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "Gemaakt na" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "Heeft vervaldatum" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "Vervaldatum voor" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "Vervaldatum na" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "Heeft doel datum" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "Doel datum voor" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "Doel datum na" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "Heeft prijsstelling" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "Voltooid voor" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "Voltooid na" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Bestellen" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "Bestelling voltooid" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Intern onderdeel" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "Bestelling in behandeling" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Voltooid" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "Heeft verzending" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Inkooporder" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Inkooporder" msgid "Sales Order" msgstr "Verkooporder" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Retour bestelling" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Totaalprijs" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "Totaalprijs van deze bestelling" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Valuta bestelling" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "Valuta voor deze order (laat leeg om de standaard van het bedrijf te gebruiken)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "Deze bestelling is vergrendeld en kan niet worden gewijzigd" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "Contact komt niet overeen met het geselecteerde bedrijf" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "Startdatum moet voor einddatum liggen" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Bestelling beschrijving (optioneel)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Selecteer projectcode voor deze bestelling" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Link naar externe pagina" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "Start datum" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "Geplande startdatum voor deze bestelling" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Streefdatum" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Verwachte datum voor levering van de bestelling. De bestelling wordt achterstallig na deze datum." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Datum van uitgifte" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Order uitgegeven op datum" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Gebruiker of groep verantwoordelijk voor deze order" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "Contactpunt voor deze volgorde" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "Bedrijf adres voor deze bestelling" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Orderreferentie" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Inkooporder status" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Bedrijf waar de artikelen van worden besteld" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Leveranciersreferentie" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Order referentiecode van leverancier" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "ontvangen door" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "Order voltooid op datum" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Bestemming" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "Bestemming voor ontvangen items" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "Onderdeelleverancier moet overeenkomen met de Inkooporderleverancier" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "Hoeveelheid moet een positief getal zijn" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Klant" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Bedrijf waaraan de artikelen worden verkocht" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "Verkooporder status" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Klantreferentie " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Klant order referentiecode" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Verzenddatum" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "verzonden door" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "Bestelling is al afgerond" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "Order is al geannuleerd" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Alleen een open bestelling kan als voltooid worden gemarkeerd" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Bestelling kan niet worden voltooid omdat er onvolledige verzendingen aanwezig zijn" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "Order kan niet worden voltooid omdat er onvolledige artikelen aanwezig zijn" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "Order kan niet worden voltooid omdat er onvolledige artikelen aanwezig zijn" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "De bestelling is vergrendeld en kan niet worden gewijzigd" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Hoeveelheid artikelen" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Artikelregel referentie" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Artikel notities" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Doeldatum voor dit regelitem (laat leeg om de doeldatum van de bestelling te gebruiken)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Regelomschrijving (optioneel)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Additionele context voor deze regel" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Stukprijs" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "Inkooporder regel item" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "Leveranciersonderdeel moet overeenkomen met leverancier" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Leveranciersonderdeel" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Ontvangen" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Aantal ontvangen artikelen" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Inkoopprijs" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Aankoopprijs per stuk" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "Extra regel inkooporder" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "Verkooporder regel item" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Virtueel onderdeel kan niet worden toegewezen aan een verkooporder" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Alleen verkoopbare onderdelen kunnen aan een verkooporder worden toegewezen" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Verkoopprijs" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Prijs per stuk" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Verzonden" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Verzonden hoeveelheid" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "Verzending van verkooporder" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Datum van verzending" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Leveringsdatum" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "Datum van levering van zending" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Gecontroleerd door" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Gebruiker die deze zending gecontroleerd heeft" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Zending" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Zendingsnummer" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Volgnummer" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Zending volginformatie" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Factuurnummer" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Referentienummer voor bijbehorende factuur" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "Verzending is al verzonden" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "Zending heeft geen toegewezen voorraadartikelen" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "Verkooporder extra regel" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "Toewijzing verkooporder" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "Voorraadartikel is niet toegewezen" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Kan het voorraadartikel niet toewijzen aan een regel met een ander onderdeel" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "Kan voorraad niet toewijzen aan een regel zonder onderdeel" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Toewijzingshoeveelheid kan niet hoger zijn dan de voorraadhoeveelheid" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "Hoeveelheid moet 1 zijn voor geserialiseerd voorraadartikel" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "Verkooporder komt niet overeen met zending" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "Verzending komt niet overeen met verkooporder" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Regel" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Verzendreferentie verkooporder" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Artikel" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Selecteer voorraadartikel om toe te wijzen" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Voer voorraadtoewijzingshoeveelheid in" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "Retour order referentie" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "Bedrijf van waaruit items worden teruggestuurd" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Retour bestelling status" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "Retourneer bestelregel item" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "Voorraad item moet worden opgegeven" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "Retour hoeveelheid overschrijdt voorraad hoeveelheid" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "Het retour aantal moet groter zijn dan nul" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "Ongeldige hoeveelheid voor geserialiseerde voorraad" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Selecteer te retourneren product van de klant" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Ontvangst datum" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "De datum waarop dit retour item is ontvangen" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Resultaat" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "Resultaat van deze regel item" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "Kosten geassocieerd met teruggave of reparatie voor deze regel item" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "Retourneren extra regel" @@ -4809,7 +4821,7 @@ msgstr "Items met hetzelfde onderdeel, bestemming en doeldatum samenvoegen in é msgid "SKU" msgstr "SKU" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Intern Onderdeelnummer" @@ -4849,7 +4861,7 @@ msgstr "Selecteer bestemmingslocatie voor ontvangen artikelen" msgid "Enter batch code for incoming stock items" msgstr "Voer batch code in voor inkomende voorraad items" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Vervaldatum" @@ -5006,905 +5018,914 @@ msgstr "Restitutie" msgid "Reject" msgstr "Afwijzen" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Achterstallige inkooporder" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "Inkooporder {po} is nu achterstallig" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Achterstallige Verkooporder" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "Verkooporder {so} is nu achterstallig" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "Favoriet" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "Filter op categorieën met ster" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "Diepte" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "Filteren op categorie diepte" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "Hoogste niveau" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "Filteren op topniveau categorieën" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "Stapelen" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "Inclusief subcategorieën in gefilterde resultaten" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "Bovenliggend" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "Filter op bovenliggende categorie" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "Subcategorieën uitsluiten in de opgegeven categorie" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "Heeft resultaten" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Binnenkomende Inkooporder" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "Uitgaande Verkooporder" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "Geproduceerde voorraad door Productieorder" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "Voorraad vereist voor Productieorder" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Valideer de gehele materiaalbon" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Deze optie moet geselecteerd worden" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "Is een variant" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "Is revisie" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "Heeft revisies" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "BOM Valid" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "Assemblage deel is testbaar" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "Component onderdeel is testbaar" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "Gebruik" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Onderdeel Categorie" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Onderdeel Categorieën" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Standaard locatie" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Standaard locatie voor onderdelen in deze categorie" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Structureel" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Onderdelen mogen niet rechtstreeks aan een structurele categorie worden toegewezen, maar kunnen worden toegewezen aan subcategorieën." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Standaard trefwoorden" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Standaard trefwoorden voor delen in deze categorie" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Pictogram" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Pictogram (optioneel)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "U kunt deze voorraadlocatie niet structureel maken omdat sommige voorraadartikelen er al in liggen!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Onderdelen" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "Kan dit deel niet verwijderen omdat het vergrendeld is" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "Kan dit deel niet verwijderen omdat het nog actief is" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "Kan dit deel niet verwijderen omdat het in een groep gebruikt is" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Ongeldige keuze voor bovenliggend deel" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "{self}' kan niet worden gebruikt in BOM voor '{parent}' (recursief)" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "{parent}' wordt gebruikt in BOM voor '{self}' (recursief)" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN moet overeenkomen met regex patroon {pattern}" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "Onderdeel kan geen herziening van zichzelf zijn" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "Kan geen revisie maken van een onderdeel dat al een revisie is" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "Revisie code moet worden opgegeven" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "Herzieningen zijn alleen toegestaan voor assemblageonderdelen" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "Kan geen revisie maken van een sjabloon onderdeel" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "Bovenliggend onderdeel moet naar dezelfde sjabloon verwijzen" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Voorraadartikel met dit serienummer bestaat al" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "Dubbele IPN niet toegestaan in deelinstellingen" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "Dubbele onderdeel revisie bestaat al." -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Onderdeel met deze naam, IPN en Revisie bestaat al." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "Onderdelen kunnen niet worden toegewezen aan categorieën van structurele onderdelen!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Onderdeel naam" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Is een sjabloon" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Is dit deel van een sjabloon?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Is dit een variant van een ander deel?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Variant van" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "Beschrijving (optioneel)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Sleutelwoorden" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Deel sleutelwoorden om de zichtbaarheid van de zoekresultaten te verbeteren" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Onderdeel Categorie" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Onderdeel revisie of versienummer" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Revisie" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "Is dit deel een herziening van een ander deel?" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "Revisie van" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "Waar wordt dit item normaal opgeslagen?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Standaard leverancier" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Standaardleverancier" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Standaard verval datum" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Verlooptijd (in dagen) voor voorraadartikelen van dit deel" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Minimum voorraad" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Minimaal toegelaten stock niveau" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Eenheden voor dit onderdeel" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Kan dit onderdeel uit andere delen worden gebouwd?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Kan dit onderdeel gebruikt worden om andere onderdelen te bouwen?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Heeft dit onderdeel een tracking voor unieke items?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "Kunnen de testresultaten van dit onderdeel tegen dit onderdeel worden geregistreerd?" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "Kan dit onderdeel worden gekocht van externe leveranciers?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Kan dit onderdeel aan klanten worden verkocht?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Is dit onderdeel actief?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "Vergrendelde onderdelen kunnen niet worden bewerkt" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "Is dit een virtueel onderdeel, zoals een softwareproduct of licentie?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "BOM checksum" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Checksum van BOM opgeslagen" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "BOM gecontroleerd door" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "BOM gecontroleerd datum" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Aanmaken gebruiker" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "Eigenaar verantwoordelijk voor dit deel" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Laatste voorraadcontrole" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Verkopen van meerdere" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "Valuta die gebruikt wordt voor de cache berekeningen" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Minimale BOM kosten" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "Minimale kosten van onderdelen" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Maximale BOM kosten" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "Maximale kosten van onderdelen" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Minimale aankoop kosten" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "Minimale historische aankoop kosten" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Maximale aanschaf kosten" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "Maximum historische aankoop kosten" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "Minimale interne prijs" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "Minimale kosten op basis van interne prijsschommelingen" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "Maximale interne prijs" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "Maximale kosten gebaseerd op interne prijsvoordelen" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "Minimale leverancier prijs" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "Minimale prijs van onderdeel van externe leveranciers" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "Maximale leverancier prijs" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "Maximale prijs van onderdeel van externe leveranciers" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Minimale variant kosten" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "Berekende minimale kosten van variant onderdelen" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Maximale variant kosten" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "Berekende maximale kosten van variant onderdelen" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Minimale kostprijs" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "Overschrijf minimale kosten" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Maximale kosten" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "Overschrijf maximale kosten" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "Berekende minimale kosten" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "Berekende totale maximale kosten" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "Minimale verkoop prijs" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "Minimale verkoopprijs gebaseerd op prijsschommelingen" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "Maximale verkoop prijs" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "Maximale verkoopprijs gebaseerd op prijsschommelingen" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Minimale verkoop prijs" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "Minimale historische verkoop prijs" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Maximale verkoop prijs" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "Maximale historische verkoop prijs" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "Onderdeel voor voorraadcontrole" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Getelde items" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "Aantal individuele voorraadvermeldingen op het moment van voorraadcontrole" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "Totale voorraad op het moment van voorraadcontrole" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Datum" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "Datum waarop voorraad werd uitgevoerd" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Aanvullende notities" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "Gebruiker die deze voorraad heeft uitgevoerd" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Minimale voorraadprijs" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "Geschatte minimum kosten van de voorraad op de hand" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "Maximale voorraadkosten" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "Geschatte maximale kosten van de hand van voorraad" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Rapport" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "Bestand voorraadcontrole (intern gegenereerd)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Aantal onderdelen" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "Aantal door voorraadopname gedekte onderdelen" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "Gebruiker die om dit voorraadrapport heeft gevraagd" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "Periodieke verkoopprijs voor onderdelen" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "Sjabloon test onderdeel" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "Ongeldige sjabloonnaam - moet minstens één alfanumeriek teken bevatten" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "Keuzes moeten uniek zijn" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "Test sjablonen kunnen alleen worden gemaakt voor testbare onderdelen" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "Test template met dezelfde sleutel bestaat al voor een deel" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Test naam" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Geef een naam op voor de test" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "Test sleutel" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "Vereenvoudigde sleutel voor de test" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Test beschrijving" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Voer beschrijving in voor deze test" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Ingeschakeld" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "Is deze test ingeschakeld?" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Vereist" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "Is deze test nodig om te doorlopen?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Waarde vereist" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "Heeft deze test een waarde nodig bij het toevoegen van een testresultaat?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Vereist bijlage" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "Vereist deze test een bestandsbijlage bij het toevoegen van een testresultaat?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Keuzes" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "Geldige keuzes voor deze parameter (komma gescheiden)" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "Sjabloon deel parameter" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "Checkbox parameters kunnen geen eenheden bevatten" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "Checkbox parameters kunnen geen eenheden bevatten" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "De template van de parameter moet uniek zijn" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Parameternaam" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "Fysieke eenheden voor deze parameter" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "Parameter omschrijving" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "Selectievakje" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "Is deze parameter een selectievak?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "Geldige keuzes voor deze parameter (komma gescheiden)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "Lijst met selecties voor deze parameter" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "Onderdeel parameters" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "Parameter kan niet worden gewijzigd - onderdeel is vergrendeld" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "Ongeldige keuze voor parameter waarde" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Hoofd onderdeel" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Parameter sjabloon" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Parameterwaarde" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "Sjabloon categorie parameters onderdeel" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Standaard waarde" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Standaard Parameter Waarde" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "BOM item kan niet worden gewijzigd - assemblage is vergrendeld " -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "BOM item kan niet worden gewijzigd - assemblage is vergrendeld" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Selecteer boven liggend onderdeel" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Sub onderdeel" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Selecteer onderdeel dat moet worden gebruikt in BOM" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "BOM hoeveelheid voor dit BOM item" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Dit BOM item is optioneel" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Dit BOM item is verbruikbaar (het wordt niet bijgehouden in build orders)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Over tijd" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschatte hoeveelheid verspilling (absoluut of percentage)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Artikelregel referentie" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "BOM item notities" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Controle som" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "BOM lijn controle som" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Goedgekeurd" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "Dit BOM item is goedgekeurd" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "Wordt overgenomen" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Dit BOM item wordt overgenomen door BOMs voor variant onderdelen" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Voorraaditems voor variant onderdelen kunnen worden gebruikt voor dit BOM artikel" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "Hoeveelheid moet een geheel getal zijn voor trackable onderdelen" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "Onderdeel moet gespecificeerd worden" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "BOM Item vervangingen bewerken" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "Vervanging onderdeel kan niet hetzelfde zijn als het hoofddeel" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Bovenliggend BOM item" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Vervanging onderdeel" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Eerste deel" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Tweede deel" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Selecteer gerelateerd onderdeel" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "Opmerking voor deze relatie" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "Onderdeel relatie kan niet worden gecreëerd tussen een deel en zichzelf" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "Dubbele relatie bestaat al" @@ -6316,83 +6337,83 @@ msgstr "Geen actie gespecificeerd" msgid "No matching action found" msgstr "Geen overeenkomende actie gevonden" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Geen overeenkomst gevonden voor streepjescodegegevens" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Overeenkomst gevonden voor streepjescodegegevens" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "Model wordt niet ondersteund" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "Model instantie niet gevonden" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "Barcode komt overeen met bestaand item" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "Geen overeenkomende actie gevonden" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "Geen overeenkomende leveranciers onderdelen gevonden" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "Meerdere overeenkomende leveranciers onderdelen gevonden" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "Geen overeenkomende plug-in gevonden voor barcode gegevens" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "Overeenkomende leverancier onderdeel" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "Regel item is al ontvangen" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "Er komt geen plug-in overeen met de barcode van de leverancier" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "Meerdere overeenkomende regelitems gevonden" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "Geen overeenkomend voorraaditem gevonden" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "Geen verkooporder opgegeven" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "Streepjescode komt niet overeen met een bestaand voorraadartikel" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "Voorraad item komt niet overeen met regelitem" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "Onvoldoende voorraad beschikbaar" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "Voorraad item toegewezen aan verkooporder" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "Te weinig informatie" @@ -6835,7 +6856,7 @@ msgstr "Rand" msgid "Print a border around each label" msgstr "Print een rand rond elk label" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "Liggend" @@ -7012,17 +7033,17 @@ msgstr "Methode" msgid "No author found" msgstr "Geen auteur gevonden" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "De plug-in '{p}' is niet compatibel met de huidige InvenTree versie {v}" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "De plug-in vereist minimaal versie {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "Plug-in vereist op de hoogste versie {v}" @@ -7259,116 +7280,116 @@ msgstr "Juridisch" msgid "Letter" msgstr "Brief" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "Sjabloonbestand met deze naam bestaat al" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Template naam" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "Template beschrijving" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "Revisie nummer (auto verhogen)" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "Bevestig aan het model bij afdrukken" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "Sla rapport output op als bijlage ten opzichte van gekoppelde model instantie bij afdrukken" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Bestandsnaam Patroon" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "Patroon voor het genereren van bestandsnamen" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "Template is ingeschakeld" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "Doel type model voor sjabloon" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filters" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "Sjabloon zoekfilters (door komma's gescheiden lijst van sleutel=waarde paren)" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "Sjabloon bestand" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "Standaard paginagrootte voor PDF rapport" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "Rapportage weergeven in liggende stand" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "Rapport gegenereerd door template {self.name}" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "Fout bij genereren rapport" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Breedte [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Label breedte, gespecificeerd in mm" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Hoogte [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Label hoogte, gespecificeerd in mm" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "Fout afdrukken van labels" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Tekstfragment" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "Rapporteer snippet bestand" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Snippet bestandsbeschrijving" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Asset" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "Rapporteer asset bestand" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "Beschrijving asset bestand" @@ -7450,7 +7471,7 @@ msgstr "Totaal" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Serienummer" @@ -7640,313 +7661,313 @@ msgstr "Het leveranciersdeel heeft een pakketgrootte gedefinieerd, maar vlag use msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Serienummers kunnen niet worden meegeleverd voor een niet traceerbaar onderdeel" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "Voorraad locatie soort" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "Voorraad locatie soorten" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "Standaardpictogram voor alle locaties waarvoor geen pictogram is ingesteld (optioneel)" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Voorraadlocatie" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Voorraadlocaties" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Eigenaar" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Selecteer eigenaar" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Voorraaditems kunnen niet direct worden geplaatst op een structurele voorraadlocatie, maar kunnen zich op onderliggende locaties bevinden." -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Extern" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "Dit is een externe voorraadlocatie" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "Locatie type" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "Voorraad locatie type van deze locatie" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "U kunt deze voorraadlocatie niet structureel maken omdat sommige voorraadartikelen er al in liggen!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "Onderdeel moet gespecificeerd worden" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "Voorraaditems kunnen niet worden geplaatst in structurele voorraadlocaties!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "Voorraadartikel kan niet worden aangemaakt voor virtuele onderdelen" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "Onderdeel type ('{self.supplier_part.part}') moet {self.part} zijn" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "Hoeveelheid moet 1 zijn voor item met een serienummer" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Serienummer kan niet worden ingesteld als de hoeveelheid groter is dan 1" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "Item kan niet tot zichzelf behoren" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "Item moet een bouw referentie hebben als is_building=True" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "Bouw referentie verwijst niet naar hetzelfde deel object" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Bovenliggend voorraad item" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Basis onderdeel" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Selecteer een leveranciersdeel voor dit voorraadartikel" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "Waar bevindt zich dit voorraaditem?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Het verpakken van dit voorraaditem is opgeslagen in" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Geïnstalleerd in" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "Is dit item geïnstalleerd in een ander item?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Serienummer van dit item" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Batch code voor dit voorraaditem" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Voorraad hoeveelheid" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Bron Bouw" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Build voor dit voorraaditem" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Verbruikt door" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "Bestelling bouwen welke dit voorraadartikel heeft verbruikt" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Inkooporder Bron" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Inkooporder voor dit voorraadartikel" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "Bestemming Verkooporder" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Vervaldatum voor voorraadartikel. Voorraad zal worden beschouwd als verlopen na deze datum" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Verwijderen bij leegmaken" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Verwijder dit voorraadproduct wanneer de voorraad is leeg" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "Enkele eenheidsprijs van de aankoop op het moment van aankoop" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "Omgezet tot onderdeel" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "Onderdeel is niet ingesteld als traceerbaar" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "Hoeveelheid moet heel getal zijn" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Hoeveelheid mag niet hoger zijn dan de beschikbare voorraad ({self.quantity})" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "Serienummers moeten als lijst worden opgegeven" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "Hoeveelheid komt niet overeen met serienummers" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "Testsjabloon bestaat niet" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Voorraadartikel is toegewezen aan een verkooporder" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Voorraad item is geïnstalleerd in een ander item" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "Voorraadartikel bevat andere producten" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Voorraadartikel is aan een klant toegewezen" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "Voorraad item is momenteel in productie" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "Geserialiseerde voorraad kan niet worden samengevoegd" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Dupliceer voorraadartikelen" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Voorraadartikelen moeten hetzelfde onderdeel verwijzen" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Voorraadartikelen moeten verwijzen naar dezelfde leveranciersdeel" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "De voorraad statuscodes moeten overeenkomen" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Voorraadartikel kan niet worden verplaatst omdat het niet op voorraad is" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "Voorraad item volgen" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Item notities" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "Resultaat voorraad test resultaten" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Waarde moet voor deze test worden opgegeven" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "Bijlage moet worden geüpload voor deze test" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "Ongeldige waarde voor deze test" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Test resultaat" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Test uitvoer waarde" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Test resultaat bijlage" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Test notities" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "Test station" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "De identificatie van het teststation waar de test werd uitgevoerd" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "Gestart" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "Het tijdstip van de start test" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "Afgerond" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "Het tijdstip van de afgeronde test" @@ -8402,6 +8423,7 @@ msgstr "Er zijn in afwachting van database migraties die aandacht vereisen" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8456,19 +8478,19 @@ msgstr "Gebruikers" msgid "Select which users are assigned to this group" msgstr "Selecteer welke gebruikers zijn toegewezen aan deze groep" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "De volgende gebruikers zijn leden van meerdere groepen" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Persoonlijke info" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Machtigingen" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Belangrijke data" diff --git a/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po index bb138fd9a9..89f224fefe 100644 --- a/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Language: no_NO\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API-endepunkt ikke funnet" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Brukeren har ikke rettigheter til å se denne modellen" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Kunne ikke konvertere {original} til {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Ugyldig mengde oppgitt" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Verdi '{name}' vises ikke i mønsterformat" msgid "Provided value does not match required pattern: " msgstr "Angitt verdi samsvarer ikke med påkrevd mønster: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Tom serienummerstreng" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Duplisert serienummer" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Gruppesekvens {group} overskrider tillatt antall ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Ingen serienummer funnet" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Antall unike serienumre ({len(serials)}) må samsvare med antallet ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Fjern HTML-tagger fra denne verdien" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Ugyldig valg" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Navn" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Beskrivelse" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Beskrivelse (valgfritt)" @@ -470,11 +470,11 @@ msgstr "Serverfeil" msgid "An error has been logged by the server." msgstr "En feil har blitt logget av serveren." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Må være et gyldig tall" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Valuta" @@ -522,28 +522,29 @@ msgstr "Svinn kan ikke overstige 100%" msgid "Invalid value for overage" msgstr "Ugyldig verdi for svinn" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Ordrestatus" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Overordnet produksjon" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Del" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Kategori" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Utstedt av" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Produksjonen må avbrytes før den kan slettes" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Forbruksvare" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Valgfritt" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Sammenstilling" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Spores" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Tildelt" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Tilgjengelig" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Produksjonsordre" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Produksjonsordrer" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Sammenstillings-BOMen er ikke godkjent" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "Produksjonsordre kan ikke opprettes for en inaktiv del" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "Produksjonsordre kan ikke opprettes for en ulåst del" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Ugyldig valg for overordnet produksjon" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Ansvarlig bruker eller gruppe må spesifiseres" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Produksjonsordrens del kan ikke endres" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Produksjonsordre-referanse" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Produksjonsordre-referanse" msgid "Reference" msgstr "Referanse" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Kort beskrivelse av produksjonen (valgfritt)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Produksjonsordre som denne produksjonen er tildelt" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Velg del å produsere" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Salgsordrereferanse" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Salgsordren denne produksjonen er tildelt til" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Kildeplassering" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Velg plassering å ta lagerbeholdning fra for denne produksjonen (la stå tomt for a ta fra alle lagerplasseringer)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Fullført plassering" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Velg plassering der fullførte artikler vil bli lagret" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Produksjonsmengde" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Antall lagervarer å produsere" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Fullførte artikler" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Antall lagervarer som er fullført" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Produksjonsstatus" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Produksjonsstatuskode" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Batchkode" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Batchkode for denne produksjonsartikkelen" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Opprettelsesdato" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Forventet sluttdato" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Måldato for ferdigstillelse. Produksjonen vil være forfalt etter denne datoen." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Fullført dato" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "fullført av" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Utstedt av" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Brukeren som utstedte denne produksjonsordren" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Ansvarlig" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Bruker eller gruppe ansvarlig for produksjonsordren" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Ekstern lenke" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Lenke til ekstern URL" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Produksjonsprioritet" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Produksjonsordrens prioritet" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Prosjektkode" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Prosjektkode for denne produksjonsordren" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Kunne ikke delegere bort oppgaven for å fullføre tildelinger" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Produksjonsordre {build} er fullført" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "En produksjonsordre er fullført" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Serienumre må angis for sporbare deler" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Ingen produksjonsartikkel spesifisert" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Produksjonsartikkelen er allerede fullført" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Produksjonsartikkelen samsvarer ikke med produksjonsordren" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Mengden må være større enn null" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Kvantitet kan ikke være større enn utgangsantallet" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Produksjonsartikkel {serial} har ikke bestått alle påkrevde tester" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Produksjonsartikkel" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Produksjonsobjekt" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Produksjonsobjekt" msgid "Quantity" msgstr "Antall" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Påkrevd antall for produksjonsordre" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Produksjonselement må spesifisere en produksjonsartikkel, da master-del er merket som sporbar" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Tildelt antall ({q}) kan ikke overstige tilgjengelig lagerbeholdning ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Lagervaren er overtildelt" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Tildelingsantall må være større enn null" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Mengden må være 1 for serialisert lagervare" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Valgt lagervare samsvarer ikke med BOM-linjen" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Lagervare" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Kildelagervare" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Lagerantall å tildele til produksjonen" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Monteres i" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Lagervare for montering" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Automatisk tildeling av nødvendige artikler med tilsvarende serienummer" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Følgende serienummer finnes allerede eller er ugyldige" @@ -1107,8 +1109,8 @@ msgstr "Grunn for skroting av produksjonsartikler" msgid "Location for completed build outputs" msgstr "Plassering for ferdige produksjonsartikler" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Leverandørdel" @@ -1313,7 +1315,7 @@ msgstr "Produksjonsreferanse" msgid "Part Category Name" msgstr "Delkategorinavn" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Sporbar" @@ -1321,12 +1323,12 @@ msgstr "Sporbar" msgid "Inherited" msgstr "Nedarvet" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Tillat Varianter" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "BOM-artikkel" @@ -1389,11 +1391,11 @@ msgstr "Fullført" msgid "Stock required for build order" msgstr "Lagerbeholdning kreves for produksjonsordre" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Forfalt produksjonsordre" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "Produksjonsordre {bo} er nå forfalt" @@ -1485,8 +1487,8 @@ msgstr "Nøkkelstreng må være unik" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Bruker" msgid "Price break quantity" msgstr "Antall for prisbrudd" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Pris" @@ -1519,7 +1521,7 @@ msgstr "Navn for webhooken" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktiv" @@ -1598,8 +1600,8 @@ msgstr "Tittel" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Lenke" @@ -1624,7 +1626,7 @@ msgstr "Les" msgid "Was this news item read?" msgstr "Er dette nyhetselementet lest?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Definisjon" msgid "Unit definition" msgstr "Enhetsdefinisjon" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Vedlegg" @@ -1716,7 +1718,7 @@ msgstr "Filstørrelse" msgid "File size in bytes" msgstr "Filstørrelse i byte" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "Ugyldig modelltype spesifisert for vedlegg" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Verdi" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Kontekst" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Resultat" @@ -1963,113 +1965,113 @@ msgstr "Resultat" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Ny {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "En ny ordre har blitt opprettet og tilordnet til deg" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} kansellert" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "En ordre som er tildelt til deg ble kansellert" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Artikler mottatt" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Artikler har blitt mottatt mot en innkjøpsordre" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "Artikler har blitt mottatt mot en returordre" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Feil oppstått i utvidelse" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Kjører" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Ventende oppgaver" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Planlagte oppgaver" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Mislykkede oppgaver" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "Oppgave-ID" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Unik oppgave-ID" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Lås" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Låsetidspunkt" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Oppgavenavn" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Funksjon" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Funksjonsnavn" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Argumenter" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Oppgaveargumenter" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Nøkkelordargumenter" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Nøkkelordargumenter for oppgave" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Filnavn" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "Modelltype" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "Brukeren har ikke tillatelse tillatelse å opprette eller endre vedlegg for denne modellen" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "Kopier designmaler for kategoriparametere" msgid "Copy category parameter templates when creating a part" msgstr "Kopier parametermaler for kategori ved oppretting av en del" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Mal" @@ -2423,7 +2425,7 @@ msgstr "Deler er maler som standard" msgid "Parts can be assembled from other components by default" msgstr "Deler kan settes sammen fra andre komponenter som standard" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Komponent" @@ -2432,7 +2434,7 @@ msgstr "Komponent" msgid "Parts can be used as sub-components by default" msgstr "Deler kan bli brukt som underkomponenter som standard" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Kjøpbar" @@ -2440,7 +2442,7 @@ msgstr "Kjøpbar" msgid "Parts are purchaseable by default" msgstr "Deler er kjøpbare som standard" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Salgbar" @@ -2452,7 +2454,7 @@ msgstr "Deler er salgbare som standard" msgid "Parts are trackable by default" msgstr "Deler er sporbare som standard" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtuelle" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Sidestørrelse" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "Søk returnerer resultater for treff med hele ord" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Vis antall i skjemaer" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Vis antall tilgjengelige deler i noen skjemaer" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Escape-knappen lukker skjemaer" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Bruk Escape-knappen for å lukke modal-skjemaer" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Fast navigasjonsbar" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "Navigasjonsbarens posisjon er fast på toppen av skjermen" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Datoformat" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Foretrukket format for å vise datoer" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Delplanlegging" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Vis delplanleggingsinformasjon" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Lagertelling for Del" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Vis lagertellingsinformasjon for del (om lagertellingsfunksjonalitet er aktivert)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Tabellstrenglengde" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Maksimal lengdegrense for tekst vist i tabeller" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Motta feilrapporter" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "Motta varsler om systemfeil" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "Kontakt-telefonnummer" msgid "Contact email address" msgstr "Kontakt e-post" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Kontakt" @@ -3575,7 +3585,7 @@ msgstr "Produserer dette firmaet deler?" msgid "Default currency used for this company" msgstr "Standardvaluta brukt for dette firmaet" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Adresse" @@ -3672,7 +3682,7 @@ msgstr "Lenke til adresseinformasjon (ekstern)" msgid "Manufacturer Part" msgstr "Produsentdeler" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Basisdel" @@ -3714,7 +3724,7 @@ msgstr "Parameternavn" msgid "Parameter value" msgstr "Parameterverdi" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Enheter" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Den sammenkoblede produsentdelen må referere til samme basisdel" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Leverandørens delbeskrivelse" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Leverandørens delbeskrivelse" msgid "Note" msgstr "Notat" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "grunnkostnad" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimum betaling (f.eks. lageravgift)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Emballasje" @@ -3802,7 +3812,7 @@ msgstr "Pakkeantall" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Totalt antall i en enkelt pakke. La være tom for enkeltenheter." -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "flere" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Gyldig" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Ukjent" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Ordrereferanse" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Opprettet av" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Ordre" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Intern del" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Fullført" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Innkjøpsordre" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Innkjøpsordre" msgid "Sales Order" msgstr "Salgsordre" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Returordre" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Total pris" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "Total pris for denne ordren" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Ordrevaluta" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "Valuta for denne ordren (la stå tom for å bruke firmastandard)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "Kontakten samsvarer ikke med valgt firma" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Ordrebeskrivelse (valgfritt)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Velg prosjektkode for denne ordren" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Lenke til ekstern side" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Måldato" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Forventet dato for levering av ordre. Bestillingen vil være forfalt etter denne datoen." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Sendt dato" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Dato bestillingen ble sendt" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Bruker eller gruppe ansvarlig for ordren" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "Kontaktpunkt for denne ordren" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "Selskapsadresse for denne ordren" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Ordrereferanse" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Status for innkjøpsordre" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Firma som varene blir bestilt fra" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Leverandørreferanse" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Leverandørens ordrereferanse" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "mottatt av" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "Dato ordre ble fullført" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Destinasjon" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "Delleverandør må matche PO-leverandør" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "Mengde må være positiv" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Kunde" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Firma som varene selges til" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Kundereferanse " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Kundens ordrereferanse" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Forsendelsesdato" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "sendt av" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Kun en åpen ordre kan merkes som fullført" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Bestillingen kan ikke fullføres da det finnes ufullstendige forsendelser" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "Denne ordren kan ikke fullføres da det fortsatt er ufullstendige artikler" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Antall" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Linjereferanse" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Linjenotater" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Måldato for denne linjen (la stå tomt for å bruke måldatoen fra ordren)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Linjeelementbeskrivelse (valgfritt)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Ytterligere kontekst for denne linjen" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Enhetspris" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "Delens leverandør må samsvare med leverandør" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Leverandørdel" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Mottatt" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Antall enheter mottatt" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Innkjøpspris" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Enhet-innkjøpspris" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Virtuell del kan ikke tildeles salgsordre" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Kun salgbare deler kan tildeles en salgsordre" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Salgspris" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Enhets-salgspris" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Sendt" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Sendt antall" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Dato for forsendelse" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Leveringsdato" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "Dato for levering av forsendelse" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Sjekket Av" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Brukeren som sjekket forsendelsen" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Forsendelse" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Forsendelsesnummer" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Sporingsnummer" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Sporingsinformasjon for forsendelse" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Fakturanummer" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Referansenummer for tilknyttet faktura" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "Forsendelsen er allerede sendt" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "Forsendelsen har ingen tildelte lagervarer" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "Lagervarer er ikke blitt tildelt" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Kan ikke tildele lagervare til en linje med annen del" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "Kan ikke tildele lagerbeholdning til en linje uten en del" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Tildelingsantall kan ikke overstige tilgjengelig lagerbeholdning" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "Antall må være 1 for serialisert lagervare" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "Salgsordre samsvarer ikke med forsendelse" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "Forsendelsen samsvarer ikke med salgsordre" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Linje" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Forsendelsesreferanse for salgsordre" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Artikkel" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Velg lagervare å tildele" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Angi lagertildelingsmengde" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "Returordre-referanse" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "Firmaet delen skal returneres fra" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Returordrestatus" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Velg artikkel som skal returneres fra kunde" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Mottatt Dato" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "Datoen denne returartikkelen ble mottatt" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Utfall" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "Utfall for dette linjeelementet" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "Kostnad forbundet med retur eller reparasjon for dette linjeelementet" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "SKU-kode" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Internt delnummer" @@ -4848,7 +4860,7 @@ msgstr "Velg lagerplassering for mottatte enheter" msgid "Enter batch code for incoming stock items" msgstr "Angi batchkode for innkommende lagervarer" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Utløpsdato" @@ -5005,905 +5017,914 @@ msgstr "Refusjon" msgid "Reject" msgstr "Avvis" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Forfalt Innkjøpsordre" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "Innkjøpsordre {po} er nå forfalt" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Forfalt Salgsordre" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "Salgsordre {so} er nå forfalt" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Innkommende innkjøpsordre" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "Utgående salgsordre" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "Lagervarer produsert av en produksjonsordre" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "Lagervarer påkrevd for produksjonsordre" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Godkjenn hele Stykklisten" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Dette alternativet må være valgt" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Delkategori" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Delkategorier" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Standard plassering" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Standardplassering for deler i denne kategorien" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Strukturell" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Deler kan ikke tilordnes direkte til en strukturell kategori, men kan tilordnes til underkategorier." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Standard nøkkelord" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Standard nøkkelord for deler i denne kategorien" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Ikon" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Ikon (valgfritt)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Du kan ikke gjøre denne delkategorien strukturell fordi noen deler allerede er tilordnet den!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Deler" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Ugyldig valg for overordnet del" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Delen '{self}' kan ikke brukes i BOM for '{parent}' (rekursiv)" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Delen '{parent}' er brukt i BOM for '{self}' (rekursiv)" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN må samsvare med regex-mønsteret {pattern}" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Lagervare med dette serienummeret eksisterer allerede" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "Duplikat av internt delnummer er ikke tillatt i delinnstillinger" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Del med dette Navnet, internt delnummer og Revisjon eksisterer allerede." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "Deler kan ikke tilordnes strukturelle delkategorier!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Delnavn" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Er Mal" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Er delen en maldel?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Er delen en variant av en annen del?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Variant av" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "Delbeskrivelse (valgfritt)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Nøkkelord" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Del-nøkkelord for å øke synligheten i søkeresultater" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Delkategori" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Delrevisjon eller versjonsnummer" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Revisjon" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "Hvor er denne artikkelen vanligvis lagret?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Standard leverandør" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Standard leverandørdel" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Standard utløp" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Utløpstid (i dager) for lagervarer av denne delen" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Minimal lagerbeholdning" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Minimum tillatt lagernivå" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Måleenheter for denne delen" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Kan denne delen bygges fra andre deler?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Kan denne delen brukes til å bygge andre deler?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Har denne delen sporing av unike artikler?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "Kan denne delen kjøpes inn fra eksterne leverandører?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Kan denne delen selges til kunder?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Er denne delen aktiv?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "Er dette en virtuell del, som et softwareprodukt eller en lisens?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Kontrollsum for BOM" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Lagret BOM-kontrollsum" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "Stykkliste sjekket av" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "Stykkliste sjekket dato" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Opprettingsbruker" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "Eier ansvarlig for denne delen" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Siste lagertelling" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Selg flere" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "Valuta som brukes til å bufre prisberegninger" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Minimal BOM-kostnad" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "Minste kostnad for komponentdeler" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Maksimal BOM-kostnad" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "Maksimal kostnad for komponentdeler" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Minimal innkjøpskostnad" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "Minimal historisk innkjøpskostnad" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Maksimal innkjøpskostnad" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "Maksimal historisk innkjøpskostnad" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "Minimal intern pris" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "Minimal kostnad basert på interne prisbrudd" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "Maksimal intern pris" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "Maksimal kostnad basert på interne prisbrudd" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "Minimal leverandørpris" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "Minimumspris for del fra eksterne leverandører" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "Maksimal leverandørpris" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "Maksimalpris for del fra eksterne leverandører" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Minimal Variantkostnad" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "Beregnet minimal kostnad for variantdeler" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Maksimal Variantkostnad" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "Beregnet maksimal kostnad for variantdeler" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Minimal kostnad" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "Overstyr minstekostnad" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Maksimal kostnad" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "Overstyr maksimal kostnad" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "Beregnet samlet minimal kostnad" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "Beregnet samlet maksimal kostnad" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "Minimal salgspris" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "Minimal salgspris basert på prisbrudd" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "Maksimal Salgspris" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "Maksimal salgspris basert på prisbrudd" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Minimal Salgskostnad" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "Minimal historisk salgspris" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Maksimal Salgskostnad" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "Maksimal historisk salgspris" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "Del for varetelling" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Antall" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "Antall individuelle lagerenheter på tidspunkt for varetelling" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "Total tilgjengelig lagerbeholdning på tidspunkt for varetelling" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Dato" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "Dato for utført lagertelling" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Flere notater" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "Bruker som utførte denne lagertellingen" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Minimal lagerkostnad" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "Estimert minimal kostnad for lagerbeholdning" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "Maksimal lagerkostnad" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "Estimert maksimal kostnad for lagerbeholdning" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Rapport" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "Lagertellingsrapportfil (generert internt)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Antall deler" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "Antall deler dekket av varetellingen" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "Bruker som forespurte varetellingsrapporten" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "Valg må være unike" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Testnavn" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Angi et navn for testen" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Testbeskrivelse" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Legg inn beskrivelse for denne testen" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Aktivert" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Påkrevd" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "Er det påkrevd at denne testen bestås?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Krever verdi" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "Krever denne testen en verdi når det legges til et testresultat?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Krever vedlegg" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "Krever denne testen et filvedlegg når du legger inn et testresultat?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Valg" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "Sjekkboksparameter kan ikke ha enheter" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "Sjekkboksparameter kan ikke ha valg" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "Navn på parametermal må være unikt" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Parameternavn" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "Fysisk enheter for denne parameteren" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "Parameterbeskrivelse" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "Sjekkboks" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "Er dette parameteret en sjekkboks?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "Gyldige valg for denne parameteren (kommaseparert)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "Ugyldig valg for parameterverdi" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Overordnet del" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Parametermal" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Parameterverdi" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Standardverdi" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Standard Parameterverdi" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Velg overordnet del" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Underordnet del" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Velg del som skal brukes i BOM" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "BOM-antall for denne BOM-artikkelen" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Denne BOM-artikkelen er valgfri" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Denne BOM-artikkelen er forbruksvare (den spores ikke i produksjonsordrer)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Svinn" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Forventet produksjonssvinn (absolutt eller prosent)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "BOM-artikkelreferanse" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "BOM-artikkelnotater" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Kontrollsum" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "BOM-linje kontrollsum" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Godkjent" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "Denne BOM-artikkelen er godkjent" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "Arves" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Denne BOM-artikkelen er arvet fra stykkliste for variantdeler" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Lagervarer for variantdeler kan brukes for denne BOM-artikkelen" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "Antall må være heltallsverdi for sporbare deler" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "Underordnet del må angis" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "BOM-artikkel erstatning" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "Erstatningsdel kan ikke være samme som hoveddelen" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Overordnet BOM-artikkel" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Erstatningsdel" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Del 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Del 2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Velg relatert del" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "Del-forhold kan ikke opprettes mellom en del og seg selv" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "Duplikatforhold eksisterer allerede" @@ -6315,83 +6336,83 @@ msgstr "Ingen handling spesifisert" msgid "No matching action found" msgstr "Ingen samsvarende handling funnet" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Ingen treff funnet for strekkodedata" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Treff funnet for strekkodedata" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "Strekkode samsvarer med ekisterende element" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "Ingen samsvarende del-data funnet" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "Finner ingen matchende leverandørdeler" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "Flere samsvarende leverandørdeler funnet" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "Fant leverandørdel" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "Artikkelen er allerede mottatt" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "Flere samsvarende elementer funnet" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "Ingen samsvarende element funnet" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "Strekkoden samsvarer ikke med eksisterende lagervare" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "Lagervare samsvarer ikke med linjeelement" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "Utilstrekkelig lagerbeholdning" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "Lagervaren er tildelt en salgsordre" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "Ikke nok informasjon" @@ -6834,7 +6855,7 @@ msgstr "Kantlinjer" msgid "Print a border around each label" msgstr "Skriv ut en kant rundt hver etikett" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "Liggende" @@ -7011,17 +7032,17 @@ msgstr "Metode" msgid "No author found" msgstr "Ingen forfatter funnet" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "Utvidensen '{p}' er ikke kompatibel med nåværende InvenTree-versjon {v}" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "Utvidelsen krever minst versjon {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "Utvidelsen krever maks versjon {v}" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Malnavn" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Filnavnmønster" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filtre" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "Sidestørrelse for PDF-rapporter" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "Generer rapport i landskapsorientering" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Bredde [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Etikettbredde, spesifisert i mm" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Høyde [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Etiketthøyde, spesifisert i mm" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Snutt" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "Rapportsnuttfil" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Filbeskrivelse for snutt" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Ressurs" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "Rapportressursfil" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "Ressursfilbeskrivelse" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Serienummer" @@ -7639,313 +7660,313 @@ msgstr "Leverandørdelen har en pakkestørrelse definert, men flagget \"use_pack msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Serienumre kan ikke angis for en ikke-sporbar del" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "Lagerplasseringstype" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "Lagerplasseringstyper" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "Standard ikom for alle plasseringer som ikke har satt et ikon (valgfritt)" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Lagerplassering" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Lagerplasseringer" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Eier" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Velg eier" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Lagervarer kan ikke knyttes direkte mot en strukturell lagerplassering, men kan knyttes mot underplasseringer." -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Ekstern" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "Dette er en ekstern lagerplassering" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "Plasseringstype" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "Lagerplasseringstype for denne plasseringen" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "De kan ikke gjøre denne plasseringen strukturell, da noen lagervarer allerede er plassert i den!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "Lagervarer kan ikke plasseres i strukturelle plasseringer!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "Lagervare kan ikke opprettes for virtuelle deler" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "Deltype ('{self.supplier_part.part}') må være {self.part}" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "Antall må være 1 for produkt med et serienummer" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Serienummeret kan ikke angis hvis antall er større enn 1" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "Elementet kan ikke tilhøre seg selv" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "Elementet må ha en produksjonsrefereanse om is_building=True" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "Produksjonsreferanse peker ikke til samme del-objekt" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Overordnet lagervare" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Basisdel" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Velg en tilsvarende leverandørdel for denne lagervaren" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "Hvor er denne lagervaren plassert?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Inpakningen denne lagervaren er lagret i" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Installert i" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "Er denne artikkelen montert i en annen artikkel?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Serienummer for denne artikkelen" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Batchkode for denne lagervaren" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Lagerantall" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Kildeproduksjon" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Produksjon for denne lagervaren" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Brukt av" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "Produksjonsordren som brukte denne lagervaren" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Kildeinnkjøpsordre" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Innkjøpsordre for denne lagervaren" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "Tildelt Salgsordre" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Utløpsdato for lagervare. Lagerbeholdning vil bli ansett som utløpt etter denne datoen" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Slett når oppbrukt" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Slett lagervaren når beholdningen er oppbrukt" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "Innkjøpspris per enhet på kjøpstidspunktet" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "Konvertert til del" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "Delen er ikke angitt som sporbar" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "Antall må være heltall" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Antall kan ikke overstige tilgjengelig lagerbeholdning ({self.quantity})" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "Antallet stemmer ikke overens med serienumrene" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Lagervare har blitt tildelt en salgsordre" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Lagervare er montert i en annen artikkel" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "Lagervare inneholder andre artikler" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Lagervare har blitt tildelt til en kunde" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "Lagervare er for tiden i produksjon" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "Serialisert lagerbeholdning kan ikke slås sammen" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Duplisert lagervare" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Lagervarer må referere til samme del" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Lagervarer må referere til samme leverandørdel" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "Lagerstatuskoder må være like" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Lagervare kan ikke flyttes fordi den ikke er på lager" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Oppføringsnotater" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Verdi må angis for denne testen" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "Vedlegg må lastes opp for denne testen" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Testresultat" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Testens verdi" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Vedlegg til testresultat" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Testnotater" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "Det er ventende database-migrasjoner som krever oppmerksomhet" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Brukere" msgid "Select which users are assigned to this group" msgstr "Velg hvilke brukere som er tilordnet denne gruppen" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "Følgende brukere er medlemmer av flere grupper" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Personlig informasjon" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Tillatelser" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Viktige datoer" diff --git a/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po index 8dcab48f21..2bd7ffd5c2 100644 --- a/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "Musisz włączyć uwierzytelnianie dwuskładnikowe przed wykonaniem czegokolwiek innego." -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "Nie znaleziono punktu końcowego API" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "Dla operacji masowych należy podać wykaz przedmiotów lub filtrów" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "Elementy muszą być podane jako lista" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "Podano nieprawidłową listę artykułów" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "Filtry muszą być dostarczone jako kartka" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Podano niepoprawne filtry" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "Żaden element nie spełnia podanych kryteriów" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Użytkownik nie ma uprawnień do przeglądania tego modelu" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Nie udało się przeliczyć {original} na {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Podano nieprawidłową ilość" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Niepoprawna wartość dziesiętna" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Wartość '{name}' nie pojawia się w formacie wzoru" msgid "Provided value does not match required pattern: " msgstr "Podana wartość nie pasuje do wymaganego wzoru: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "Nie można serializować więcej niż 1000 przedmiotów naraz" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Pusty ciąg numeru seryjnego" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Podwójny numer seryjny" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Nieprawidłowa grupa: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Zakres grupy {group} przekracza dozwoloną ilość ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nie znaleziono numerów seryjnych" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Liczba unikalnych numerów seryjnych ({len(serials)}) musi odpowiadać ilości ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Usuń znaczniki HTML z tej wartości" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "Dane zawierają zabronione treści znacznika" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Błędny wybór" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Nazwa" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Opis" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Opis (opcjonalny)" @@ -470,11 +470,11 @@ msgstr "Błąd serwera" msgid "An error has been logged by the server." msgstr "Błąd został zapisany w logach serwera." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Numer musi być prawidłowy" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Waluta" @@ -522,28 +522,29 @@ msgstr "Przedawnienie nie może przekroczyć 100 %" msgid "Invalid value for overage" msgstr "Nieprawidłowa wartość przedawnienia" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Status zamówienia" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Budowa nadrzędna" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "Obejmuje warianty" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "Obejmuje warianty" msgid "Part" msgstr "Komponent" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Kategoria" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Budowa poprzednika" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Przypisane do mnie" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Dodane przez" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "Stworzony przed" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "Stworzony po" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "Ma datę rozpoczęcia" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "Data rozpoczęcia przed" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "Data rozpoczęcia po" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "Posiada docelową datę" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "Data docelowa przed" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "Docelowa data po" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "Zakończone przed" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "Zakończone po" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "Minimalna data" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "Maksymalna data" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "Wyklucz drzewo" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Kompilacja musi zostać anulowana, zanim będzie mogła zostać usunięta" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Materiał eksploatacyjny" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Opcjonalne" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Złożenie" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Śledzony" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Testowalne" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "Zaległe zamówienie" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Przydzielono" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Dostępne" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Zlecenie Budowy" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Zlecenia budowy" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Zbiór BOM nie został zatwierdzony" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "Zlecenie budowy nie może być utworzone dla nieaktywnej części" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "Zlecenie budowy nie może zostać utworzone dla odblokowanej części" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Nieprawidłowy wybór kompilacji nadrzędnej" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Odpowiedzialny użytkownik lub grupa muszą być określone" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Nie można zmienić elementu kompletacji" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "Data docelowa musi być po dacie rozpoczęcia" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Odwołanie do zamówienia wykonania" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Odwołanie do zamówienia wykonania" msgid "Reference" msgstr "Referencja" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Krótki opis produkcji (opcjonalny)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Zamówienie budowy, do którego budowa jest przypisana" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Wybierz część do budowy" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Odwołanie do zamówienia sprzedaży" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Zamówienie sprzedaży, do którego budowa jest przypisana" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Lokalizacja źródła" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Wybierz lokalizację, z której pobrać element do budowy (pozostaw puste, aby wziąć z dowolnej lokalizacji)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Lokalizacja docelowa" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Wybierz lokalizację, w której będą przechowywane ukończone elementy" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Ilość do stworzenia" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Ilość przedmiotów do zbudowania" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Ukończone elementy" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Ilość produktów magazynowych które zostały ukończone" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Status budowania" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Kod statusu budowania" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Kod partii" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Kod partii dla wyjścia budowy" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Data utworzenia" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "Data rozpoczęcia budowy" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "Zaplanowana data rozpoczęcia dla tego zamówienia budowy" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Docelowy termin zakończenia" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Docelowa data zakończenia kompilacji. Po tej dacie kompilacja będzie zaległa." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Data zakończenia" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "zrealizowane przez" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Wydany przez" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Użytkownik, który wydał to zamówienie" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Odpowiedzialny" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Użytkownik lub grupa odpowiedzialna za te zlecenie produkcji" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Link Zewnętrzny" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Link do zewnętrznego adresu URL" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Priorytet budowy" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Priorytet tego zamówienia produkcji" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Kod projektu" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Kod projektu dla tego zlecenia produkcji" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Nie udało się wyładować zadania, aby ukończyć alokację budowli" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Kolejność kompilacji {build} została zakończona" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Kolejność kompilacji została zakończona" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Należy podać numery seryjne dla lokalizowania części" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Nie określono danych wyjściowych budowy" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Budowanie wyjścia jest już ukończone" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Skompilowane dane wyjściowe nie pasują do kolejności kompilacji" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Ilość musi być większa niż zero" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Ilość nie może być większa niż ilość wyjściowa" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Wyjście budowy {serial} nie przeszło wszystkich testów" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Zbuduj obiekt" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Zbuduj obiekt" msgid "Quantity" msgstr "Ilość" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Wymagana ilość dla zlecenia produkcji" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Element kompilacji musi określać dane wyjściowe kompilacji, ponieważ część główna jest oznaczona jako możliwa do śledzenia" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Przydzielona ilość ({q}) nie może przekraczać dostępnej ilości zapasów magazynowych ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Pozycja magazynowa jest nadmiernie przydzielona" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Alokowana ilość musi być większa niż zero" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Ilość musi wynosić 1 dla serializowanych zasobów" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Wybrana pozycja magazynowa nie pasuje do pozycji w zestawieniu BOM" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Element magazynowy" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Lokalizacja magazynowania przedmiotu" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Ilość zapasów do przydzielenia do produkcji" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Zainstaluj do" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Docelowa lokalizacja magazynowa przedmiotu" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Automatycznie przydzielaj wymagane elementy z pasującymi numerami seryjnymi" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Poniższe numery seryjne już istnieją lub są nieprawidłowe" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Możliwość śledzenia" @@ -1321,12 +1323,12 @@ msgstr "Możliwość śledzenia" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Zezwalaj na warianty" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Element BOM" @@ -1389,11 +1391,11 @@ msgstr "Zakończono" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "Ciąg musi być unikatowy" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Użytkownik" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Cena" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktywny" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Łącze" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Załącznik" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Wartość" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Dane" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Wynik" @@ -1963,113 +1965,113 @@ msgstr "Wynik" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Jest uruchomiony" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Oczekujce zadania" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Zaplanowane zadania" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Zadania zakończone błędem" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "ID zadania" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Unikalny identyfikator zadania" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Blokada" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Czas blokady" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Nazwa zadania" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Funkcja" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Nazwa funkcji" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Argumenty" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Argumenty zadania" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Nazwa pliku" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Szablon" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Komponent" @@ -2432,7 +2434,7 @@ msgstr "Komponent" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Możliwość zakupu" @@ -2440,7 +2442,7 @@ msgstr "Możliwość zakupu" msgid "Parts are purchaseable by default" msgstr "Części są domyślnie z możliwością zakupu" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Możliwość sprzedaży" @@ -2452,7 +2454,7 @@ msgstr "Części są domyślnie z możliwością sprzedaży" msgid "Parts are trackable by default" msgstr "Części są domyślnie z możliwością śledzenia" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Wirtualny" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Rozmiar strony" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Pokaż ilość w formularzach" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Stały pasek nawigacyjny" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Format daty" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Preferowany format wyświetlania dat" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Planowanie komponentów" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "Numer telefonu kontaktowego" msgid "Contact email address" msgstr "Kontaktowy adres e-mail" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Kontakt" @@ -3575,7 +3585,7 @@ msgstr "Czy to przedsiębiorstwo produkuje części?" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Adres" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "Komponent producenta" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Część bazowa" @@ -3714,7 +3724,7 @@ msgstr "Nazwa parametru" msgid "Parameter value" msgstr "Wartość parametru" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Jednostki" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "Uwaga" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "koszt podstawowy" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Opakowanie" @@ -3802,7 +3812,7 @@ msgstr "Ilość w opakowaniu" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "wielokrotność" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Ważny" @@ -4078,7 +4088,7 @@ msgstr "Liczba kopii do wydrukowania dla każdej etykiety" msgid "Connected" msgstr "Połączono" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Nieznany" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Numer zamówienia" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Utworzony przez" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "Posiada ceny" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Zamówienie" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Komponent wewnętrzny" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "Zamówienie oczekujące" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Zakończone" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Zlecenie zakupu" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Zlecenie zakupu" msgid "Sales Order" msgstr "Zamówienie zakupu" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Cena całkowita" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Link do zewnętrznej witryny" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Data docelowa" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Data wydania" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Data wystawienia zamówienia" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Użytkownik lub grupa odpowiedzialna za to zamówienie" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Odniesienie zamówienia" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Status zamówienia zakupu" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "odebrane przez" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Przeznaczenie" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "Wartość musi być liczbą dodatnią" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Klient" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Data wysyłki" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "wysłane przez" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Ilość elementów" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Odebrane" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Cena zakupu" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Cena zakupu jednostkowego" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Cena sprzedaży" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Jednostkowa cena sprzedaży" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Wysłane" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Wysłana ilość" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Data wysyłki" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Sprawdzone przez" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Użytkownik, który sprawdził tę wysyłkę" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Przesyłka" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Numer przesyłki" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Numer śledzenia" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Informacje o śledzeniu przesyłki" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "Przesyłka została już wysłana" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Zarezerwowana ilość nie może przekraczać ilości na stanie" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Linia" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Komponent" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Data ważności" @@ -5005,905 +5017,914 @@ msgstr "Zwrot pieniędzy" msgid "Reject" msgstr "Odrzuć" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Zaległe zlecenie zakupu" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "Zlecenie zakupu {po} jest teraz zaległe" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Nadchodzące zlecenie zakupu" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Ta opcja musi być zaznaczona" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Kategoria komponentu" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Kategorie części" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Domyślna lokalizacja" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Domyślna lokalizacja dla komponentów w tej kategorii" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Domyślne słowa kluczowe" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Części" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Nieprawidłowy wybór dla części nadrzędnej" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Nazwa komponentu" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Czy szablon" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Czy ta część stanowi szablon części?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Czy ta część jest wariantem innej części?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Wariant" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Słowa kluczowe" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Wersja" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Domyślne wygasanie" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Minimalny stan magazynowy" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Czy ten komponent może być zbudowany z innych komponentów?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Czy ta część może być użyta do budowy innych części?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Czy ta część wymaga śledzenia każdego towaru z osobna?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Czy ta część jest aktywna?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "Czy to wirtualna część, taka jak oprogramowanie lub licencja?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Tworzenie użytkownika" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Ostatnia inwentaryzacja" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Sprzedaj wiele" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Data" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Nazwa testu" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Testowy opis" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Wprowadź opis do tego testu" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Aktywne" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Wymagane" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Wymaga wartości" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Wymaga załącznika" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Część nadrzędna" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Wartość parametru" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Wartość domyślna" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Wybierz część nadrzędną" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Podczęść" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Ten element BOM jest opcjonalny" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Notatki pozycji BOM" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Suma kontrolna" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Zatwierdzone" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Część zastępcza" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Część 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Część 2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Wybierz powiązaną część" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "Nie określono działania" msgid "No matching action found" msgstr "Nie znaleziono pasującej akcji" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Nie znaleziono wyników dla danych kodu kreskowego" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Znaleziono wyniki dla danych kodu kreskowego" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "Kod kreskowy pasuje do istniejącego elementu" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "Kod kreskowy nie pasuje do istniejących pozycji magazynowych" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "Metoda" msgid "No author found" msgstr "Nie znaleziono autora" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Nazwa szablonu" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Wzór nazwy pliku" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filtry" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "Domyślna wielkość strony dla raportów PDF" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "Renderuj raport w orientacji poziomej" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Szerokość [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Wysokość [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Wycinek" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "Razem" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Numer Seryjny" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Lokacje stanu magazynowego" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Właściciel" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Wybierz właściciela" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Nadrzędny towar" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Część podstawowa" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Wybierz pasującą część dostawcy dla tego towaru" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Zainstalowane w" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Ilość w magazynie" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Wyszukaj zlecenie zakupu" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Zlecenie zakupu dla tego towaru" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Usuń po wyczerpaniu" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "Ilość musi być liczbą całkowitą" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Notatki do wpisu" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Należy podać wartość dla tego testu" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Wynik testu" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Użytkownicy" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Informacje osobiste" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Uprawnienia" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Ważne daty" diff --git a/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po index 7330767a99..38c78bc099 100644 --- a/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Portuguese\n" "Language: pt_PT\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API endpoint não encontrado" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Usuário não tem permissão para ver este modelo" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Não foi possível converter {original} para {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Quantidade fornecida inválida" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Valor '{name}' não está no formato correto" msgid "Provided value does not match required pattern: " msgstr "O valor fornecido não corresponde ao padrão exigido: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Número serial em branco" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Número de série duplicado" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Intervalo do grupo {group} excede a quantidade permitida ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nenhum número de série foi encontrado" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Números de série únicos ({len(serials)}) deve corresponder a quantidade ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Remova as \"tags\" HTML deste valor" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Escolha inválida" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Nome" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Descrição" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Descrição (opcional)" @@ -470,11 +470,11 @@ msgstr "Erro de servidor" msgid "An error has been logged by the server." msgstr "Log de erro salvo pelo servidor." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Preicsa ser um numero valido" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Moeda" @@ -522,28 +522,29 @@ msgstr "Excedente não deve exceder 100%" msgid "Invalid value for overage" msgstr "Valor de excedente inválido" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Situação do pedido" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Produção Progenitor" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Peça" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Categoria" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Emitido por" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Produção deve ser cancelada antes de ser deletada" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Consumível" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Opcional" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Montagem" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Monitorado" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Alocado" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Disponível" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Ordem de Produção" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Ordens de Produções" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Escolha de Produção parental inválida" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Usuário ou grupo responsável deve ser especificado" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Peça da ordem de produção não pode ser alterada" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Referência do pedido de produção" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Referência do pedido de produção" msgid "Reference" msgstr "Referência" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Breve descrição da produção (opcional)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Pedido de produção para qual este serviço está alocado" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Selecionar peça para produção" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Referência do pedido de venda" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Pedido de Venda para qual esta produção está alocada" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Local de Origem" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Selecione a localização para pegar do estoque para esta produção (deixe em branco para tirar a partir de qualquer local de estoque)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Local de Destino" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Selecione o local onde os itens concluídos serão armazenados" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Quantidade de Produção" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Número de itens em estoque para produzir" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Itens concluídos" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Número de itens em estoque concluídos" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Progresso da produção" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Código de situação da produção" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Código de Lote" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Código do lote para esta saída de produção" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Criado em" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Data alvo final" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Data alvo para finalização de produção. Estará atrasado a partir deste dia." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Data de conclusão" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "Concluído por" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Emitido por" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Usuário que emitiu este pedido de produção" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Responsável" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Usuário ou grupo responsável para este pedido de produção" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Link Externo" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Link para URL externa" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Prioridade de Produção" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Prioridade deste pedido de produção" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Código do projeto" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Código do projeto para este pedido de produção" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Falha ao descarregar tarefa para concluir alocações de construção" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "O Pedido de produção {build} foi concluído!" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Um pedido de produção foi concluído" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Números de série devem ser fornecidos para peças rastreáveis" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Nenhuma saída de produção especificada" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Saída de produção já completada" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Saída da produção não corresponde ao Pedido de Produção" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Quantidade deve ser maior que zero" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Quantidade não pode ser maior do que a quantidade de saída" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "O item de produção {serial} não passou todos os testes necessários" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Item da linha de Produção" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Objeto de produção" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Objeto de produção" msgid "Quantity" msgstr "Quantidade" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Quantidade necessária para o pedido de produção" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Item de produção deve especificar a saída, pois peças mestres estão marcadas como rastreáveis" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Quantidade alocada ({q}) não deve exceder a quantidade disponível em estoque ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "O item do estoque está sobre-alocado" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Quantidade alocada deve ser maior que zero" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Quantidade deve ser 1 para estoque serializado" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Item estoque selecionado não coincide com linha da LDM" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Item de estoque" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Origem do item em estoque" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Quantidade do estoque para alocar à produção" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Instalar em" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Destino do Item do Estoque" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Alocar automaticamente os itens necessários com os números de série correspondentes" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Os seguintes números de série já existem ou são inválidos" @@ -1107,8 +1109,8 @@ msgstr "Motivo para sucatear saída(s) de produção" msgid "Location for completed build outputs" msgstr "Local para saídas de produção concluídas" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Fornecedor da Peça" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Rastreável" @@ -1321,12 +1323,12 @@ msgstr "Rastreável" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Permitir variações" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Item LDM" @@ -1389,11 +1391,11 @@ msgstr "Completado" msgid "Stock required for build order" msgstr "Estoque obrigatório para o pedido de produção" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Pedido de produção vencido" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "Pedido de produção {bo} está atrasada" @@ -1485,8 +1487,8 @@ msgstr "A frase senha deve ser diferenciada" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Usuario" msgid "Price break quantity" msgstr "Quantidade de Parcelamentos" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Preço" @@ -1519,7 +1521,7 @@ msgstr "Nome para este webhook" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Ativo" @@ -1598,8 +1600,8 @@ msgstr "Título" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Ligação" @@ -1624,7 +1626,7 @@ msgstr "Lida" msgid "Was this news item read?" msgstr "Esta notícia do item foi lida?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Definição" msgid "Unit definition" msgstr "Definição de unidade" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Anexo" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Valor" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Dados" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Contexto" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Resultado" @@ -1963,113 +1965,113 @@ msgstr "Resultado" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Novo {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Um novo pedido foi criado e atribuído a você" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} cancelado" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "Um pedido atribuído a você foi cancelado" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Itens Recebidos" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Os itens de um pedido de compra foram recebidos" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "Os itens de um pedido de devolução foram recebidos" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Erro criado pela extensão" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Executando" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Tarefas Pendentes" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Tarefas Agendadas" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Tarefas com Falhas" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "ID da Tarefa" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "ID Único da Tarefa" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Bloquear" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Tempo de bloqueio" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Nome da tarefa" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Função" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Nome da função" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Argumentos" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Argumentos da tarefa" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Argumentos de Palavra-chave" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Argumentos Palavra-chave da Tarefa" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Nome do arquivo" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "Copiar Parâmetros dos Modelos de Categoria" msgid "Copy category parameter templates when creating a part" msgstr "Copiar parâmetros do modelo de categoria quando criar uma peça" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Modelo" @@ -2423,7 +2425,7 @@ msgstr "Peças são modelos por padrão" msgid "Parts can be assembled from other components by default" msgstr "Peças podem ser montadas a partir de outros componentes por padrão" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Componente" @@ -2432,7 +2434,7 @@ msgstr "Componente" msgid "Parts can be used as sub-components by default" msgstr "Peças podem ser usadas como sub-componentes por padrão" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Comprável" @@ -2440,7 +2442,7 @@ msgstr "Comprável" msgid "Parts are purchaseable by default" msgstr "Peças são compráveis por padrão" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Vendível" @@ -2452,7 +2454,7 @@ msgstr "Peças vão vendíveis por padrão" msgid "Parts are trackable by default" msgstr "Peças vão rastreáveis por padrão" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtual" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "Registro de erros que ocorrem ao gerar relatórios" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Tamanho da página" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "Pesquisa retorna que palavra inteira coincide" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Mostrar Quantidade nos Formulários" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Mostrar a quantidade de peças disponíveis em alguns formulários" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Tecla Esc Fecha Formulários" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Usar a tecla Esc para fechar fomulários modais" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Fixar Navbar" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "A posição do Navbar é fixa no topo da tela" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Formato da data" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Formato preferido para mostrar datas" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Agendamento de peças" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Mostrar informações de agendamento de peças" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Balanço de Peça" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Mostrar informação de balanço da peça (se a funcionalidade de balanço estiver habilitada)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Comprimento da Tabela de Frases" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Limite máximo de comprimento para frases exibidas nas visualizações de tabela" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Receber relatório de erros" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "Receber notificações para erros do sistema" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "Últimas máquinas de impressão utilizadas" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "Salvar as últimas máquinas de impressão usadas para um usuário" @@ -3530,7 +3540,7 @@ msgstr "Número de telefone do contato" msgid "Contact email address" msgstr "Endereço de e-mail do contato" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Contato" @@ -3575,7 +3585,7 @@ msgstr "Esta empresa fabrica peças?" msgid "Default currency used for this company" msgstr "Moeda padrão utilizada para esta empresa" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Endereço" @@ -3672,7 +3682,7 @@ msgstr "Link para as informações do endereço (externo)" msgid "Manufacturer Part" msgstr "Peça do Fabricante" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Peça base" @@ -3714,7 +3724,7 @@ msgstr "Nome do parâmetro" msgid "Parameter value" msgstr "Valor do Parâmetro" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Unidades" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Parte do fabricante vinculado deve fazer referência à mesma peça base" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Descrição da peça fornecedor" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Descrição da peça fornecedor" msgid "Note" msgstr "Anotação" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "preço base" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Taxa mínima (ex.: taxa de estoque)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Embalagem" @@ -3802,7 +3812,7 @@ msgstr "Quantidade de embalagens" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Quantidade total fornecida em um único pacote. Deixe em branco para itens únicos." -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "múltiplo" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Válido" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Desconhecido" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Referência do Pedido" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Criado por" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Pedido" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Peça Interna" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Concluído" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Pedido de Compra" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Pedido de Compra" msgid "Sales Order" msgstr "Pedido de Venda" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Devolver pedido" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Preço Total" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "Preço total deste pedido" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Moeda do pedido" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "Moeda para este pedido (deixe em branco para usar o padrão da empresa)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "O contato não corresponde à empresa selecionada" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Descrição do pedido (opcional)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Selecione o código do projeto para este pedido" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Link para página externa" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Data alvo" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Data esperada para entrega do pedido. O Pedido estará atrasado após esta data." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Data de emissão" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Dia que o pedido foi feito" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Usuário ou grupo responsável para este pedido" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "Ponto de contato para este pedido" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "Endereço da empresa para este pedido" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Referência do pedido" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Situação do pedido de compra" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Empresa da qual os itens estão sendo encomendados" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Referencia do fornecedor" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Código de referência do pedido fornecedor" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "recebido por" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "Dia que o pedido foi concluído" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Destino" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "Fornecedor de peça deve corresponder a fornecedor da OC" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "Quantidade deve ser um número positivo" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Cliente" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Empresa para qual os itens foi vendidos" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Referência do Cliente " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Código de Referência do pedido do cliente" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Data de Envio" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "enviado por" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Apenas um pedido aberto pode ser marcado como completo" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Pedido não pode ser concluído, pois, há envios incompletos" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "Pedido não pode ser concluído, pois, há itens na linha incompletos" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Quantidade do item" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Referência do Item em Linha" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Observações do Item de Linha" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Data alvo para este item de linha (deixe em branco para usar a data alvo do pedido)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Descrição item de linha (opcional)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Contexto adicional para esta linha" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Preço Unitário" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "A peça do fornecedor deve corresponder ao fornecedor" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Fornecedor da Peça" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Recebido" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Número de itens recebidos" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Preço de Compra" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Preço unitário de compra" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Peça virtual não pode ser atribuída a um pedido de venda" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Apenas peças vendáveis podem ser atribuídas a um pedido de venda" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Preço de Venda" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Preço de venda unitário" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Enviado" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Quantidade enviada" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Data do envio" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Data de Entrega" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "Data da entrega do envio" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Verificado por" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Usuário que verificou esta remessa" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Remessa" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Número do Envio" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Número de Rastreamento" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Informação de rastreamento da remessa" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Número da Fatura" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Número de referência para fatura associada" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "O pedido já foi enviado" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "Remessa não foi alocada nos itens de estoque" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "O item do estoque não foi atribuído" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Não é possível alocar o item de estoque para uma linha de uma peça diferente" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "Não é possível alocar uma linha sem uma peça" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "A quantidade de alocação não pode exceder a quantidade em estoque" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "Quantidade deve ser 1 para item de estoque serializado" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "Pedidos de venda não coincidem com a remessa" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "Remessa não coincide com pedido de venda" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Linha" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Referência de remessa do pedido de venda" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Selecione o item de estoque para alocar" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Insira a quantidade de atribuição de estoque" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "Referência de Pedidos de Devolução" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "Empresa da qual os itens estão sendo retornados" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Estado do pedido de retorno" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Selecione o item a ser devolvido pelo cliente" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Data de Recebimento" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "Data que o pedido a ser devolvido foi recebido" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Despesa/gastos" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "Gastos com esta linha de itens" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "Gastos para reparar e/ou devolver esta linha de itens" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "Código (SKU)" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Numero interno do produto" @@ -4848,7 +4860,7 @@ msgstr "Selecione o local de destino para os itens recebidos" msgid "Enter batch code for incoming stock items" msgstr "Digite o código do lote para itens de estoque recebidos" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Data de validade" @@ -5005,905 +5017,914 @@ msgstr "Reembolsar" msgid "Reject" msgstr "Recusar" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Pedido de compra vencido" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "Pedido de compra {po} está atrasada" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Pedido de venda vencido" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "Pedido de venda {so} está atrasada" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Pedido de compra recebido" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "Pedidos de Venda Feitos" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "Estoque produzido pelo Pedido de Produção" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "Estoque obrigatório para Pedido de Produção" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Validar a Lista de Materiais completa" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Esta opção deve ser selecionada" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Categoria da Peça" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Categorias de Peça" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Local Padrão" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Local padrão para peças desta categoria" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Estrutural" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Peças não podem ser diretamente atribuídas a uma categoria estrutural, mas podem ser atribuídas a categorias filhas." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Palavras-chave Padrão" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Palavras-chave padrão para peças nesta categoria" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Ícone" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Ícone (opcional)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Você não pode tornar esta categoria em estrutural, pois, algumas partes já estão alocadas!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Peças" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Escolha inválida para peça parental" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Peça '{self}' não pode ser utilizada na BOM para '{parent}' (recursiva)" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Peça '{parent}' é usada na BOM para '{self}' (recursiva)" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN deve corresponder ao padrão regex {pattern}" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Item em estoque com este número de série já existe" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "Não é permitido duplicar IPN em configurações de partes" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Uma parte com este Nome, IPN e Revisão já existe." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "Peças não podem ser atribuídas a categorias estruturais!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Nome da peça" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "É um modelo" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Esta peça é uma peça modelo?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Esta peça é variante de outra peça?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Variante de" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "Descrição da peça (opcional)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Palavras chave" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Palavras-chave para melhorar a visibilidade nos resultados da pesquisa" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Categoria da Peça" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Revisão de peça ou número de versão" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Revisão" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "Onde este item é armazenado normalmente?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Fornecedor Padrão" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Fornecedor padrão da peça" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Validade Padrão" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Validade (em dias) para itens do estoque desta peça" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Estoque Mínimo" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Nível mínimo de estoque permitido" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Unidade de medida para esta peça" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Essa peça pode ser construída a partir de outras peças?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Essa peça pode ser usada para construir outras peças?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Esta parte tem rastreamento para itens únicos?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "Esta peça pode ser comprada de fornecedores externos?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Esta peça pode ser vendida a clientes?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Esta parte está ativa?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "Esta é uma peça virtual, como um software de produto ou licença?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Soma de Verificação da LDM" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Soma de verificação da LDM armazenada" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "LDM conferida por" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "LDM verificada no dia" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Criação de Usuário" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "Proprietário responsável por esta peça" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Último Balanço" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Venda múltipla" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "Moeda usada para armazenar os cálculos de preços" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Custo Mínimo da LDM" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "Custo mínimo das peças componentes" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Custo Máximo da LDM" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "Custo máximo das peças componentes" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Custo Mínimo de Compra" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "Custo mínimo histórico de compra" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Custo Máximo de Compra" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "Custo máximo histórico de compra" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "Preço Interno Mínimo" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "Custo mínimo baseado nos intervalos de preço internos" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "Preço Interno Máximo" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "Custo máximo baseado nos intervalos de preço internos" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "Preço Mínimo do Fornecedor" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "Preço mínimo da peça de fornecedores externos" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "Preço Máximo do Fornecedor" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "Preço máximo da peça de fornecedores externos" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Custo Mínimo variável" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "Custo mínimo calculado das peças variáveis" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Custo Máximo Variável" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "Custo máximo calculado das peças variáveis" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Custo Mínimo" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "Sobrepor o custo mínimo" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Custo Máximo" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "Sobrepor o custo máximo" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "Custo total mínimo calculado" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "Custo total máximo calculado" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "Preço Mínimo de Venda" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "Preço mínimo de venda baseado nos intervalos de preço" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "Preço Máximo de Venda" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "Preço máximo de venda baseado nos intervalos de preço" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Custo Mínimo de Venda" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "Preço histórico mínimo de venda" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Custo Máximo de Venda" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "Preço histórico máximo de venda" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "Peça para Balanço" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Total de Itens" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "Número de entradas de estoques individuais no momento do balanço" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "Estoque total disponível no momento do balanço" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Data" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "Data de realização do balanço" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Notas adicionais" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "Usuário que fez o balanço" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Custo Mínimo de Estoque" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "Custo mínimo estimado de estoque disponível" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "Custo Máximo de Estoque" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "Custo máximo estimado de estoque disponível" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Reportar" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "Arquivo de Relatório de Balanço (gerado internamente)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Contagem de Peças" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "Número de peças cobertas pelo Balanço" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "Usuário que solicitou este relatório de balanço" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "Escolhas devem ser únicas" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Nome de Teste" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Insira um nome para o teste" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Descrição do Teste" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Digite a descrição para este teste" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Habilitado" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Requerido" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "Este teste é obrigatório passar?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Requer Valor" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "Este teste requer um valor ao adicionar um resultado de teste?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Anexo obrigatório" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "Este teste requer um anexo ao adicionar um resultado de teste?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Escolhas" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "Parâmetros da caixa de seleção não podem ter unidades" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "Os parâmetros da caixa de seleção não podem ter escolhas" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "Nome do modelo de parâmetro deve ser único" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Nome do Parâmetro" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "Unidades físicas para este parâmetro" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "Descrição do Parâmetro" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "Caixa de seleção" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "Este parâmetro é uma caixa de seleção?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "Opções válidas para este parâmetro (separadas por vírgulas)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "Escolha inválida para valor do parâmetro" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Peça Paternal" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Modelo de parâmetro" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Valor do Parâmetro" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Valor Padrão" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Valor Padrão do Parâmetro" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Selecione a Peça Parental" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Sub peça" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Selecionar peça a ser usada na LDM" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "Quantidade de LDM para este item LDM" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Este item LDM é opcional" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Este item LDM é consumível (não é rastreado nos pedidos de construção)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Excedente" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Quantidade estimada de desperdício (absoluto ou porcentagem)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Referência do Item LDM" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Notas do Item LDM" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Soma de verificação" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "Soma de Verificação da LDM da linha" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Validado" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "O item da LDM foi validado" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "Obtém herdados" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Este item da LDM é herdado por LDMs para peças variáveis" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Itens de estoque para as peças das variantes podem ser usados para este item LDM" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "Quantidade deve ser valor inteiro para peças rastreáveis" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "Sub peça deve ser especificada" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "Substituir Item da LDM" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "A peça de substituição não pode ser a mesma que a peça mestre" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Item LDM Parental" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Substituir peça" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Parte 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Parte 2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Selecionar Peça Relacionada" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "Relacionamento da peça não pode ser criada com ela mesma" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "Relação duplicada já existe" @@ -6315,83 +6336,83 @@ msgstr "Nenhuma ação especificada" msgid "No matching action found" msgstr "Nenhuma ação correspondente encontrada" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Nenhum resultado encontrado para os dados do código de barras" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Coincidência encontrada para dados de código de barras" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "Código de barras corresponde ao item existente" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "Nenhuma informação de peça correspondente encontrada" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "Nenhuma peça de fornecedor correspondente encontrada" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "Múltiplas peças de fornecedores correspondentes encontradas" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "Peça de fornecedor correspondente" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "Item do pedido já foi recebido" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "Diversos itens de linha correspondentes encontrados" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "Nenhum item de linha correspondente encontrado" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "Código de barras não corresponde a item de estoque válido" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "Item do estoque não corresponde ao item de linha" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "Estoque insuficiente disponível" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "Item de estoque atribuído para pedido de venda" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "Não há informação suficiente" @@ -6834,7 +6855,7 @@ msgstr "Borda" msgid "Print a border around each label" msgstr "Imprima uma borda em torno de cada etiqueta" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "Paisagem" @@ -7011,17 +7032,17 @@ msgstr "Método" msgid "No author found" msgstr "Nenhum autor encontrado" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "A extensão '{p}' não é compatível com a versão atual do InvenTree {v}" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "Extensão requer pelo menos a versão {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "Extensão requer no máximo a versão {v}" @@ -7258,116 +7279,116 @@ msgstr "Ofício" msgid "Letter" msgstr "Carta" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Nome do modelo" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Padrão de Nome de Arquivo" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filtros" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "Tamanho da página para relatórios PDF" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "Renderizar relatório em orientação paisagem" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Largura [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Largura da etiqueta, em mm" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Altura [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Altura da Etiqueta, em mm" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Recorte" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "Relatar arquivo de recorte" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Descrição do arquivo de recorte" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Patrimônio" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "Reportar arquivo de ativos" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "Descrição do arquivo de ativos" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Número de Sério" @@ -7639,313 +7660,313 @@ msgstr "A peça do fornecedor tem um tamanho de pacote definido, mas o item use_ msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Números de série não podem ser fornecidos para uma parte não rastreável" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "Tipo de Local de estoque" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "Tipos de Locais de estoque" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "Ícone padrão para todos os locais que não tem um ícone (opcional)" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Localização do estoque" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Locais de estoque" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Responsavel" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Selecionar Responsável" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Os itens de estoque podem não estar diretamente localizados em um local de estoque estrutural, mas podem ser localizados em locais filhos." -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Externo" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "Esta é uma localização de estoque externo" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "Tipo de localização" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "Tipo de Local de Estoque para esta locação" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "Você não pode tornar este local do estoque estrutural, pois alguns itens de estoque já estão localizados nele!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "Os itens de estoque não podem estar localizados em locais de estoque estrutural!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "Item de estoque não pode ser criado para peças virtuais" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "Tipo de peça('{self.supplier_part.part}') deve ser {self.part}" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "A quantidade deve ser 1 para um item com número de série" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Número de série não pode ser definido se quantidade maior que 1" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "O item não pode pertencer a si mesmo" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "Item deve ter uma referência de produção se is_building=True" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "Referência de produção não aponta ao mesmo objeto da peça" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Item de Estoque Parental" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Peça base" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Selecione uma peça do fornecedor correspondente para este item de estoque" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "Onde está localizado este item de estoque?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Embalagem deste item de estoque está armazenado em" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Instalado em" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "Este item está instalado em outro item?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Número de série para este item" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Código do lote para este item de estoque" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Quantidade de Estoque" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Produção de Origem" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Produção para este item de estoque" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Consumido por" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "Pedido de produção que consumiu este item de estoque" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Pedido de compra Fonte" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Pedido de Compra para este item de estoque" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "Destino do Pedido de Venda" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Data de validade para o item de estoque. Estoque será considerado expirado após este dia" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Excluir quando esgotado" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Excluir este item de estoque quando o estoque for esgotado" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "Preço de compra unitário único no momento da compra" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "Convertido para peça" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "Peça não está definida como rastreável" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "Quantidade deve ser inteira" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Quantidade não deve exceder a quantidade em estoque ({self.quantity})" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "A quantidade não corresponde aos números de série" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Item em estoque foi reservado para um pedido" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Item em estoque está instalado em outro item" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "item em estoque contem outro(s) items" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Item em estoque foi reservado para outro cliente" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "Item no estoque está em produção no momento" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "Itens de série não podem ser mesclados" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Item de estoque duplicado" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Itens de estoque devem se referir à mesma peça" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Itens de estoque devem se referir à mesma peça do fornecedor" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "Códigos de estado do estoque devem corresponder" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Item do estoque não pode ser realocado se não houver estoque da mesma" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Observações de entrada" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Deve-se fornecer o valor desse teste" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "O anexo deve ser enviado para este teste" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Resultado do teste" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Valor da saída do teste" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Anexo do resultado do teste" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Notas do teste" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "Existem migrações pendentes do banco de dados que requerem atenção" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Usuários" msgid "Select which users are assigned to this group" msgstr "Selecione quais usuários estão atribuídos a este grupo" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "Os seguintes usuários são membros de vários grupos" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Informações pessoais" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Permissões" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Datas importantes" diff --git a/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po index de562e30c5..1640d4cb0e 100644 --- a/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API endpoint não encontrado" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "Lista de itens inválida fornecida" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Filtros inválidos fornecidos" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "O valor fornecido não corresponde ao padrão exigido: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "Não é possível serializar mais de 1000 itens de uma vez" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Grupo invalido:{group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Descrição" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "Erro de servidor" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Moeda" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Referência do pedido de venda" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Quantidade necessária para o pedido de produção" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Alocar automaticamente os itens necessários com os números de série correspondentes" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Ativo" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Modelo" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "Modelos de teste só podem ser criados para partes testáveis" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po index 32b998256c..37af85aebc 100644 --- a/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Romanian\n" "Language: ro_RO\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Utilizatorul nu are permisiunea de a vedea acest model" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Număr de serie duplicat" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po index 733078706e..96cc74d905 100644 --- a/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -19,37 +19,37 @@ msgstr "" #: InvenTree/AllUserRequire2FAMiddleware.py:42 msgid "You must enable two-factor authentication before doing anything else." -msgstr "" +msgstr "Вы должны включить двухфакторную аутентификацию, прежде чем делать что-нибудь еще." -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "Конечная точка API не обнаружена" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "У пользователя недостаточно прав для просмотра этой модели!" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Невозможно преобразовать {original} в {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "недопустимое количество" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Значение '{name}' отсутствует в формате ша msgid "Provided value does not match required pattern: " msgstr "Предоставленное значение не соответствует требуемому формату: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Пустая строка серийного номера" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Повторяющийся серийный номер" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" -msgstr "" +msgstr "Недопустимая группа: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Диапазон группы {group} превышает допустимое количество ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Серийных номеров не найдено" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Число уникальных серийных номеров ({s}) должно соответствовать количеству ({q})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Удалить HTML теги из этого значения" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -349,7 +349,7 @@ msgstr "Китайский (Традиционный)" #: InvenTree/magic_login.py:31 msgid "Log in to the app" -msgstr "" +msgstr "Войти в приложение" #: InvenTree/magic_login.py:41 company/models.py:136 users/serializers.py:236 msgid "Email" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Неверный выбор" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Название" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Описание" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Описание (необязательно)" @@ -455,7 +455,7 @@ msgstr "Обнаружен существующий штрих-код" #: InvenTree/models.py:1074 msgid "Task Failure" -msgstr "" +msgstr "Задача не удалась" #: InvenTree/models.py:1075 #, python-brace-format @@ -470,11 +470,11 @@ msgstr "Ошибка сервера" msgid "An error has been logged by the server." msgstr "Сервер зарегистрировал ошибку." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Должно быть действительным номером" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Валюта" @@ -522,28 +522,29 @@ msgstr "Избыток не может превысить 100%" msgid "Invalid value for overage" msgstr "Неверное значение для избытка" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Статсу заказа" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Родительский заказ на производство" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Деталь" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Категория" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Назначено мне" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Создано" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Заказ на производство должен быть отменен перед удалением" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Расходники" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Необязательно" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Производимая деталь" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Отслеживается" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Зарезервировано" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Доступно" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Заказ на производство" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Заказы на производство" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Сборка BOM не подтверждена" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "Порядок сборки не может быть создан для неактивной части" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "Порядок сборки не может быть создан для разблокированной части" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Неверный выбор для родительской сборки" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Должен быть указан ответственный пользователь или группа" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Деталь заказа на производства не может быть изменена" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Ссылка на заказ на производство" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Ссылка на заказ на производство" msgid "Reference" msgstr "Отсылка" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Краткое описание заказа на производство (необязательно)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Заказ на производство, которому принадлежит этот заказ на производство" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Выберите деталь для производства" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Ссылка на заказ" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Заказ на продажу, которому принадлежит этот заказ на производство" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Место хранения - источник" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Выберите место хранения для этого заказа на производство (оставьте пустым, чтобы взять с любого места на складе)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Место хранения результата" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Выберите место хранения завершенных элементов" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Количество производимых деталей" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Количество складских позиций для производства" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Произведенные детали" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Количество складских позиций, которые были произведены" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Статус заказа на производство" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Код статуса заказа на производство" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Код партии" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Код партии для продукции" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Дата создания" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Целевая дата завершения" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Целевая дата для заказа на производства. Заказ будет просрочен после этой даты." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Дата завершения" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "выполнено" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Создано" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Пользователь, создавший этот заказ на производство" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Ответственный" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Пользователь, ответственный за этот заказ на производство" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Внешняя ссылка" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Ссылка на внешний URL" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Приоритет производства" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Приоритет этого заказа на производство" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Код проекта" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Код проекта для этого заказа на производство" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Не удалось выгрузить задачу для распределения на сборку" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Заказ на производство {build} был завершен" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Заказ на производство был завершен" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Для отслеживаемых частей должны быть указаны серийные номера" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Продукция не указана" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Продукция уже произведена" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Продукция не совпадает с заказом на производство" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Количество должно быть больше нуля" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Количество не может быть больше количества продукции" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Сборка {serial} не прошла все необходимые тесты" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Номер позиции для производства" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Объект производства" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Объект производства" msgid "Quantity" msgstr "Количество" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Требуемое количество для заказа на производство" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Элемент производства должен указать продукцию, как главную деталь помеченную как отслеживаемая" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Резервируемое количество ({q}) не должно превышать доступное количество на складе ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Складская позиция перераспределена" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Резервируемое количество должно быть больше нуля" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Количество должно быть 1 для сериализованных запасов" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Выбранная складская позиция не соответствует позиции в BOM" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Складская позиция" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Исходная складская позиция" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Количество на складе для производства" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Установить в" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Целевая складская позиция" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Автоматически зарезервировать необходимые элементы с соответствующими серийными номерами" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Следующие серийные номера уже существуют или недействительны" @@ -1107,8 +1109,8 @@ msgstr "Причина списания продукции" msgid "Location for completed build outputs" msgstr "Место хранения для завершенной продукции" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Деталь поставщика" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Отслеживание" @@ -1321,12 +1323,12 @@ msgstr "Отслеживание" msgid "Inherited" msgstr "Унаследованные" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Разрешить разновидности" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Позиция BOM" @@ -1389,11 +1391,11 @@ msgstr "Готово" msgid "Stock required for build order" msgstr "Необходимый запас для заказа на производство" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Просроченный заказ сборки" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "Заказ на производство {bo} просрочен" @@ -1485,8 +1487,8 @@ msgstr "Строка ключа должна быть уникальной" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Пользователь" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Цена" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Активный" @@ -1598,8 +1600,8 @@ msgstr "Заголовок" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Ссылка" @@ -1624,7 +1626,7 @@ msgstr "Читать" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Определение" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Вложения" @@ -1714,9 +1716,9 @@ msgstr "" #: common/models.py:1908 msgid "File size in bytes" -msgstr "" +msgstr "Размер файла в байтах" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Значение" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Данные" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Контекст" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Результат" @@ -1963,113 +1965,113 @@ msgstr "Результат" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Полученные элементы" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Запущен" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Ожидающие задачи" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Запланированные задания" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Невыполненные Задачи" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "Код задачи" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Уникальный ID задачи" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Заблокировать" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Время блокировки" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Название задачи" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Функция" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Имя функции" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Аргументы" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Аргументы задачи" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Имя файла" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "Скопировать параметры по шаблону катег msgid "Copy category parameter templates when creating a part" msgstr "Копировать параметры по шаблону категории при создании детали" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Шаблон" @@ -2423,7 +2425,7 @@ msgstr "По умолчанию детали являются шаблонами msgid "Parts can be assembled from other components by default" msgstr "По умолчанию детали могут быть собраны из других компонентов" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Компонент" @@ -2432,7 +2434,7 @@ msgstr "Компонент" msgid "Parts can be used as sub-components by default" msgstr "По умолчанию детали могут использоваться в качестве суб-компонентов" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Можно купить" @@ -2440,7 +2442,7 @@ msgstr "Можно купить" msgid "Parts are purchaseable by default" msgstr "По умолчанию детали являются отслеживаемыми" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Можно продавать" @@ -2452,7 +2454,7 @@ msgstr "Детали продаются по умолчанию" msgid "Parts are trackable by default" msgstr "По умолчанию детали являются отслеживаемыми" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Виртуальная" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "Журнал ошибок, которые возникают при создании отчетов" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Размер страницы" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Фиксированная панель навигации" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Формат даты" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Планирование деталей" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Инвентаризация детали" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Показывать информацию о товаре (если включена функция инвентаризации)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "Контактный телефон" msgid "Contact email address" msgstr "Контактный EMail" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Контакт" @@ -3575,7 +3585,7 @@ msgstr "Является ли компания производителем де msgid "Default currency used for this company" msgstr "Для этой компании используется валюта по умолчанию" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Адрес" @@ -3672,7 +3682,7 @@ msgstr "Ссылка на адресную информацию (внешняя) msgid "Manufacturer Part" msgstr "Деталь производителя" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Базовая деталь" @@ -3714,7 +3724,7 @@ msgstr "Наименование параметра" msgid "Parameter value" msgstr "Значение параметра" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Ед.изм" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Связанная деталь производителя должна ссылаться на ту же базовую деталь" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Описание детали поставщика" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Описание детали поставщика" msgid "Note" msgstr "Запись" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "базовая стоимость" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Упаковка" @@ -3802,7 +3812,7 @@ msgstr "Кол-во в упаковке" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "множественные" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "Ошибки" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Корректный" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "Подключен" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Неизвестно" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Ссылка на заказ" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "Невыполненный" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Создал" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "Имеет цену" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Заказ" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Внутренняя деталь" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Завершённые" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Заказ на закупку" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Заказ на закупку" msgid "Sales Order" msgstr "Заказ на продажу" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Заказ на возврат" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Общая стоимость" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Валюта Заказа" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "Контакт не соответствует выбранной компании" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Описание заказа (дополнительно)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Выберите код проекта для этого заказа" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Ссылка на внешнюю страницу" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Целевая дата" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Дата создания" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Пользователь или группа, ответственная за этот заказ" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Ссылка на заказ" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Компания, в которой детали заказываются" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "получил" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Назначение" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Покупатель" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Компания, которой детали продаются" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Дата отгрузки" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "Отправлено" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Количество" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Записи о позиции" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Описание позиции (необязательно)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Дополнительный контекст для этой строки" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Цена за единицу" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Деталь поставщика" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Получено" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Закупочная цена" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Цена продажи" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Цена последней продажи" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Доставлено" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Отгруженное кол-во" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Дата отправления" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Дата доставки" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Проверн" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Отправление" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Номер отправления" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Номер отслеживания" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Информация об отслеживании доставки" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Номер счета" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "Отправка не имеет зарезервированных складских позиций" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "Складская позиция не была назначена" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Невозможно зарезервировать складскую позицию в позицию другой детали" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "Количество должно быть 1 для сериализированных складских позиций" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Строка" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Элемент" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Выберите складскую позицию для резервирования" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Укажите резервируемое количество" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Выберите позицию, возвращаемую от клиента" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Дата получения" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Результат" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Внутренний код детали" @@ -4848,7 +4860,7 @@ msgstr "Выберите место назначения для полученн msgid "Enter batch code for incoming stock items" msgstr "Введите код партии для поступающих складских позиций" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Истекает" @@ -5005,905 +5017,914 @@ msgstr "Возврат" msgid "Reject" msgstr "Отклонить" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Просроченные заказы на закупку" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Просроченные заказы на продажу" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "Остатки произведенные заказом на производство" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "Остатки требуемые для заказов на производство" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Необходимо выбрать эту опцию" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Категория детали" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Категория детали" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Место хранения по умолчанию" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Место хранения по умолчанию для деталей этой категории" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Структура" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Детали не могут быть непосредственно отнесены к структурной категории, но могут быть отнесены к дочерним категориям." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Ключевые слова по умолчанию" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Ключевые слова по умолчанию для деталей этой категории" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Иконка" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Иконка (необязательно)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Детали" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Складская позиция с этим серийным номером уже существует" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Часть с таким именем, IPN и ревизией уже существует." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Наименование детали" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Шаблон" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Эта деталь является шаблоном?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Эта деталь является разновидностью другой детали?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Разновидность" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "Описание детали (необязательно)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Ключевые слова" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Ключевые слова для улучшения видимости в результатах поиска" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Категория" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Ревизия или серийный номер детали" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Ревизия" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "Где обычно хранится эта деталь?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Поставщик по умолчанию" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Срок действия по умолчанию" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Срок годности (в днях) для складских позиций этой детали" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Минимальный запас" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Минимально допустимый складской запас" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Единицы измерения этой детали" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Может ли эта деталь быть создана из других деталей?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Может ли эта деталь использоваться для создания других деталей?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Является ли каждый экземпляр этой детали уникальным, обладающим серийным номером?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "Может ли эта деталь быть закуплена у внешних поставщиков?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Может ли эта деталь быть продана покупателям?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Эта деталь активна?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "Эта деталь виртуальная, как программный продукт или лицензия?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Контрольная сумма BOM" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "BOM проверил" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "Дата проверки BOM" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Создатель" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Последняя инвентаризация" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Продать несколько" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Минимальная Стоимость BOM" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Максимальная Стоимость BOM" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Минимальная Стоимость" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Максимальная Стоимость" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Количество Элементов" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Дата" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Дополнительные Записи" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Отчет" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Количество Деталей" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Название теста" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Введите имя для теста" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Описание теста" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Введите описание для этого теста" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Включено" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Требуется" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Требуется значение" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Варианты" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Название параметра" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "Описание параметра" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "Чекбокс" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "Недопустимое значение параметра" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Родительская деталь" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Шаблон параметра" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Значение Параметра" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Значение по умолчанию" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Значение параметра по умолчанию" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Выберите родительскую деталь" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Суб-деталь" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Выбрать деталь для использования в BOM" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Эта позиция спецификации необязательна" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Эта позиция - расходник. (она не отслеживается в заказах на производство)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Перерасход" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Расчетное количество перерасходов производства (абсолютное или процентное)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Ссылка на позицию спецификации" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Записи о позиции BOM" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Контрольная сумма" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Проверен" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "Наследуется" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Складские позиции для разновидностей деталей могут быть использованы для этой позиции BOM" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "Для отслеживаемых деталей количество должно быть целым числом" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Позиция BOM-родителя" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Замена детали" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Часть 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Часть 2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Выберите связанную часть" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "Действие не указано" msgid "No matching action found" msgstr "Соответствующее действие не найдено" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Не найдено совпадений для данных штрих-кода" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Найдено совпадение по штрих-коду" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "Штрих-код не соответствует существующим складским позициям" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "Складская позиция не соответствует позиции" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "Складская позиция зарезервирована заказом на продажу" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "Граница" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "Альбомная" @@ -7011,17 +7032,17 @@ msgstr "Метод" msgid "No author found" msgstr "Автор не найден" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "Правовая информация" msgid "Letter" msgstr "Письмо" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Название шаблона" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "Описание шаблона" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "Номер ревизии (автоматически)" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Шаблон имени файла" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Фильтры" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Ширина [мм]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Высота [мм]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Сниппет" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Описание файла сниппета" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Объект" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "Описание медиафайла" @@ -7449,7 +7470,7 @@ msgstr "Всего" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Серийный номер" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Место хранения" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Места хранения" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Владелец" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Выберите владельца" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Складские позиции не могут находиться в структурных местах хранения, но могут находиться в дочерних местах хранения." -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Внешний" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "Тип Места Хранения" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "Вы не можете сделать это место хранение структурным, потому, что некоторые складские позиции уже находятся в нем!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "Складские позиции не могут находиться в структурных местах хранения!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "Складская позиция не может быть создана для виртуальных деталей" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "Элемент должен иметь ссылку на производство, если is_building=True" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "Ссылка на производство не указывает на тот же элемент" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Складская позиция" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Базовая деталь" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Выберите соответствующего поставщика детали для этой складской позиции" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "Где находиться эта складская позиция?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Упаковка этой складской позиции хранится в" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Установлено в" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Код партии для этой складской позиции" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Количество на складе" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Исходное производство" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Производства для этой складской позиции" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Поглощен" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "Заказ на производство, который поглотил эту складскую позицию" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Заказ на закупку для этой складской позиции" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Дата истечения срока годности для складской позиции. Остатки будут считаться просроченными после этой даты" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Удалить при обнулении" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Удалить эту складскую позицию при обнулении складского запаса" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "Деталь не является отслеживаемой" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Складская позиция была назначена заказу на продажу" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Складская позиция установлена в другую деталь" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "Складская позиция содержит другие детали" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Складская позиция была назначена покупателю" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "Складская позиция в производстве" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Складские позиции должны ссылаться на одну и ту же деталь" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Складские позиции должны ссылаться на одну и ту же деталь поставщика" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Результат тестирования" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Записи Тестирования" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Пользователи" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Персональная информация" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Права доступа" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Важные даты" diff --git a/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po index 83d875fff6..5a98d64ca2 100644 --- a/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Slovak\n" "Language: sk_SK\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po index 9ace963c01..e44c27e361 100644 --- a/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Slovenian\n" "Language: sl_SI\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API vmesnik ni najden" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Uporabnik nima dovoljenja pogleda tega modela" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Ni mogoče pretvoriti {original} v {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Podana napačna količina" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Vrednost '{name}' ni v predpisanem formatu" msgid "Provided value does not match required pattern: " msgstr "Podana vrednost se ujema s predpisanim vzorcem: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Prazno polje serijske številke" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Dvojna serijska številka" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Doseg skupine {group} presega dovoljene količine ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Serijske številke niso najdene" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Število unikatnih serijskih številk ({len(serials)}) se mora ujemati s količino ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Odstranite oznako HTML iz te vrednosti" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Nedovoljena izbira" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Ime" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Opis" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Opis (opcijsko)" @@ -470,11 +470,11 @@ msgstr "Napaka strežnika" msgid "An error has been logged by the server." msgstr "Zaznana napaka na strežniku." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Mora biti veljavna številka" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Valuta" @@ -522,28 +522,29 @@ msgstr "Prestarost ne sme presegati 100%" msgid "Invalid value for overage" msgstr "Neveljavna vrednost za prestarost" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Nadrejena izgradnja" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Del" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Dodeljeno meni" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Izdal" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Dodeljeno" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Izgradnja mora biti najprej preklicana, nato je lahko izbrisana" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Neobvezno" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Montaža" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Sledi" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Testno" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Dodeljeno" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Na voljo" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Nalog izgradnje" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Nalogi izgradnje" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Sestava BOM ni bila potrjena" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Neveljavna izbira za nadrejeno izgradnjo" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Naveden mora biti odgovorni uporabnik ali skupina" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Referenca naloga izgradnje" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Referenca naloga izgradnje" msgid "Reference" msgstr "Referenca" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Nalog izgradnje na katerega se ta izgradnaj nanaša" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Izberite del za izgradnjo" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Referenca dobavnica" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Dobavnica na katero se navezuje ta izgradnja" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Lokacija vira" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Izberite lokacijo dela za to izgradnjo (v primeru da ni pomembno pusti prazno)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Ciljna lokacija" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Izberite lokacijo, kjer bodo končne postavke shranjene" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Količina izgradenj" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Število postavk za izgradnjo" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Končane postavke" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Število postavk zaloge, ki so bile končane" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Status izgradnje" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Koda statusa izgradnje" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Številka serije" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Številka serije za to izgradnjo" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Datum ustvarjenja" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Rok dokončanja" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Rok končanja izdelave. Izdelava po tem datumu bo v zamudi po tem datumu." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Datom končanja" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "dokončal" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Izdal" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Uporabnik, ki je izdal nalog za izgradnjo" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Odgovoren" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Odgovorni uporabnik ali skupina za to naročilo" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Zunanja povezava" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Zunanja povezava" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Nalog izgradnje {build} je dokončan" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Nalog izgradnej dokončan" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Ni določena izgradnja" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Igradnja je že dokončana" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Izgradnja se ne ujema s nalogom izdelave" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "Količina" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Izdelana postavka mora imeti izgradnjo, če je glavni del označen kot sledljiv" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Prestavljena zaloga ({q}) ne sme presegati zaloge ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Preveč zaloge je prestavljene" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Prestavljena količina mora biti večja od 0" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Količina za zalogo s serijsko številko mora biti 1" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Postavka zaloge" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Izvorna postavka zaloge" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Količina zaloge za prestavljanje za izgradnjo" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Inštaliraj v" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Destinacija postavke zaloge" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "Končano" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Uporabnik" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktivno" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Povezava" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Priloga" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Ime datoteke" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Poslano" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po index 90fd004593..f919699911 100644 --- a/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Serbian (Latin)\n" "Language: sr_CS\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API krajnja tačka nije pronađena" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "Lista nevalidiranih stavki" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Dati su neispravni filteri" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Korisnik nema dozvolu za pregled ovog modela" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Nije moguće konvertovati {original} u {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Isporučena nevažeća količina" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Neispravna decimalna vrednost" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Vrednost '{name}' se ne pojavljuje u formatu obrasca" msgid "Provided value does not match required pattern: " msgstr "Navedena vrednost ne odgovara traženom obrascu: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "Nije moguće dati više od 1000 serijskih brojeva stavkama odjednom" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Serijski broj nije popunjen" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Dupliciraj serijski broj" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Nevažeća grupa: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Raspon grupe {group} prelazi dozvoljenu količinu ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nisu pronađeni serijski brojevi" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Broj jedinstvenih serijskih brojeva ({len(serials)}) mora odgovarati količini ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Uklonite HTML oznake iz ove vrednosti" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "Podatak sadrži zabranjen jezički sadržaj" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Nevažeći izvor" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Ime" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Opis" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Opis (Opciono)" @@ -470,11 +470,11 @@ msgstr "Greška servera" msgid "An error has been logged by the server." msgstr "Server je zabležio grešku." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Mora biti važeći broj" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Valuta" @@ -522,28 +522,29 @@ msgstr "Ukupna vrednost ne sme da prelazi 100%" msgid "Invalid value for overage" msgstr "Nevažeća ukupna vrednost" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Status naloga" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Roditeljski proizvod" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "Uključi varijante" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "Uključi varijante" msgid "Part" msgstr "Deo" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Kategorija" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Proizvod predaka" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Dodeljeno meni" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Izdato od" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Dodeljeno" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "Kreirano pre" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "Kreirano nakon" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "Ciljni datum pre" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "Ciljni datum nakon" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "Završeno pre" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "Završeno nakon" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "Ne uključuj stablo" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Proizvod mora biti poništen pre nego što se izbriše" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Potrošni materijal" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Opciono" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Sklapanje" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Praćeno" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Proverljivo" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "Neizmirena narudžbina" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Alocirano" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Dostupno" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Nalog za izradu" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Nalozi za izradu" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "BOM za sastavljanje nije potvrđeno" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "Nalog za izradu se ne može kreirati za neaktivan deo" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "Nalog za izradu se ne može kreirati za zaključan deo" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Nevažeći izbor za nadređenu verziju" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Odgovorni korisnik ili grupa mora biti određena" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Deo u nalogu za izradu ne može se izmeniti" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Reference naloga za pravljenje" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Reference naloga za pravljenje" msgid "Reference" msgstr "Referenca" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Kratak opis izrade (nije obavezno)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Nalog za izradu za koju je ova izrada alocirana" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Izaberi deo za izgradnju" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Referenca naloga za prodaju" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Nalog za prodaju za koju je ova izrada alocirana" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Lokacija izvora" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Izaberi lokaciju zaliha za ovu izgradnju (ostaviti prazno ako hoćete bilo koju lokaciju zaliha" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Lokacija odredišta" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Izaberi lokaciju gde će se završene stavke skladištiti" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Količina izgradnje" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Broj stavki za izgradnju" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Kompletirane stavke" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Broj stavki u zalihama koje su kompletirane" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Status izgradnje" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Kod statusa izgradnje" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Kod serije" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Kod izgradnje za ovaj izlaz" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "datum kreiranja" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Datum ciljanog završetka" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Ciljani datum za završetak izgradnje. Izgradnja će biti u prekoračenju nakon ovog datuma" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Datum završetka" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "kompletirano od " -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "izdato od" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Korisnik koji je izdao nalog za izgradnju" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Odgovoran" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Korisnik ili grupa koja je odgovorna za ovaj nalog za izgradnju" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Spoljašnja konekcija" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Link za eksterni URL" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Prioritet izgradnje" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Prioritet ovog naloga za izgradnju" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Kod projekta" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Kod projekta za ovaj nalog za izgradnju" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Nije uspelo preuzimanje zadataka da bi se dovršila alokacija izgradnje" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Nalog za izgradnju {build} je kompletiran" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Nalog za izgradnju je kompletiran" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Za delove koji mogu da se prate moraju se dostaviri serijski brojevi" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Nije određen izlaz izgradnje" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Izlaz izgradnje je već kompletiran" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Izlaz izgradnje se ne slaže sa Nalogom za izgradnju" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Količina mora biti veća od nule" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Količina ne sme da bude veća od izlazne količine" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Izlaz izgradnje {serial} nije zadovoljio zahtevane testove" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Stavka porudžbine naloga za izgradnju" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Objekat izgradnje" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Objekat izgradnje" msgid "Quantity" msgstr "Količina" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Potrebna količina za nalog za izgradnju" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Stavka izgradnje mora imati izlaz izgradnje, jer je nadređeni deo markiran da može da se prati" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Alocirana količina ({q}) ne sme da bude veća od količine dostupnih zaliha ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Stavka zaliha je prealocirana" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Količina alokacije mora da bude veća od nule" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Količina mora da bude 1 za zalihe koje su serijalizovane" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Izabrana stavka zaliha se ne slaže sa porudžbinom sa spiska materijala" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Stavka zaliha" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Izvor stavke zaliha" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Količina zaliha za alociranje za izgradnju" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Ugradi u" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Stavka zaliha odredišta" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Automatski alociraj tražene stavke sa odgovarajućim serijskim brojevima" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Sledeći serijski brojevi već postoje ili su neispravni" @@ -1107,8 +1109,8 @@ msgstr "Razlog za otpisane izlaz(e) izgradnje" msgid "Location for completed build outputs" msgstr "Lokacija za završene izlaze izgradnje" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "BOM ime dela" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Deo dobavljača" @@ -1313,7 +1315,7 @@ msgstr "Referenca izgradnje" msgid "Part Category Name" msgstr "Ime kategorije dela" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Može da se prati" @@ -1321,12 +1323,12 @@ msgstr "Može da se prati" msgid "Inherited" msgstr "Nasleđen" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Dozvoli varijante" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "BOM stavka" @@ -1389,11 +1391,11 @@ msgstr "Gotovo" msgid "Stock required for build order" msgstr "Potrebne su zalihe za nalog izgranje" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Prekoračeni nalog za izgradnju" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "Nalog za izgradnju {bo} je sada prekoračen" @@ -1485,8 +1487,8 @@ msgstr "Tekstualni ključ mora da bude jedinstven" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Korisnik" msgid "Price break quantity" msgstr "Prelomna količina cene" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Cena" @@ -1519,7 +1521,7 @@ msgstr "Ime ovog zahteva za izmenu stranice" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktivan" @@ -1598,8 +1600,8 @@ msgstr "Naslov" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Link" @@ -1624,7 +1626,7 @@ msgstr "Čitaj" msgid "Was this news item read?" msgstr "Da li je ova stavka vesti pročitana" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Definicija" msgid "Unit definition" msgstr "Definicija jedinice" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Prilog" @@ -1716,7 +1718,7 @@ msgstr "Veličina datoteke" msgid "File size in bytes" msgstr "Veličina datoteke u bajtovima" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "Određen je neispravan tip modela za prilog" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "Stanje logičkog ključa je jednako posebnom ključu u poslovnoj logici" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Vrednost" @@ -1814,7 +1816,7 @@ msgstr "Logički ključ mora biti među logičkim ključevima referentnog status msgid "Name must be different from the names of the reference status" msgstr "Naziv mora biti različit od naziva u statusu reference" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "Lista odabira" @@ -1830,7 +1832,7 @@ msgstr "Ime liste odabira" msgid "Description of the selection list" msgstr "Opis liste odabira" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "Zaključano" @@ -1914,7 +1916,7 @@ msgstr "Da li je unos ove liste odabira aktivan?" msgid "Barcode Scan" msgstr "Skeniranje bar koda" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Podaci" @@ -1938,7 +1940,7 @@ msgstr "Datum i vreme skeniranja bar koda" msgid "URL endpoint which processed the barcode" msgstr "URL krajnja tačka kojaj je obradila bar kod" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Kontekst" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "Podaci odgovora za skeniranje bar koda" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Rezultat" @@ -1963,113 +1965,113 @@ msgstr "Rezultat" msgid "Was the barcode scan successful?" msgstr "Da li je skeniranje bar koda bilo uspešno?" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Novo {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Nova narudžbina je kreirana i dodeljena vama" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} poništeno" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "Narudžbina koja je bila dodeljena vama je otkazana" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Stavke primljene" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Stavke su primljene uprkos nalogu za kupovinu" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "Stavke su primljene uprkos nalogu za povrat" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Greška je aktivirala ekstenziju" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Pokrenuto je" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Čekaju se zadaci" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Planirani zadaci" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Propali zadaci" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "ID zadatka" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Jedinstveni ID zadatka" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Zaključaj" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Vreme zaključavanja" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Naziv zadatka" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Funkcija" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Ime funkcije" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Argumenti" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Argumenti zadatka" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Ključne reči argumenata" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Ključne reči argumenata zadatka" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Ime datoteke" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "Tip modela" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "Korisnik nema dozvolu da napravi ili izmeni priloge za ovaj model" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "Lista odabira je zaključana" @@ -2409,8 +2411,8 @@ msgstr "Kopiraj šablone parametara kategorije" msgid "Copy category parameter templates when creating a part" msgstr "Kopiraj šablone parametara kategorije prilikom pravljenja dela" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Šablon" @@ -2423,7 +2425,7 @@ msgstr "Podrazumevano je da su delovi šabloni" msgid "Parts can be assembled from other components by default" msgstr "Podrazumevano je da se delovi mogu sastavljati od drugih komponenti" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Komponenta" @@ -2432,7 +2434,7 @@ msgstr "Komponenta" msgid "Parts can be used as sub-components by default" msgstr "Podrazumevano je da se delovi mogu koristi kao pod-komponente" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Može da se kupi" @@ -2440,7 +2442,7 @@ msgstr "Može da se kupi" msgid "Parts are purchaseable by default" msgstr "Podrazumevano je da se delovi mogu kupiti" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Može da se proda" @@ -2452,7 +2454,7 @@ msgstr "podrazumevano je da delovi mogu da se prodaju" msgid "Parts are trackable by default" msgstr "Podrazumevano je da delovi mogu da se prate" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtuelni" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "Greške evidentiranja koje se dese prilikom generisanja izveštaja" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Veličina stranice" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "Upiti pretrage vraćaju rezultate za poklapanje celih reči" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Prikaži količine u formama" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Prikaži dostupne količine delova u nekim formama" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Escape dugme zatvara forme" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Koristi escape dugme za zatvaranje modalnih formi" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Fiksirana traka za navigaciju" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "Pozicija trake za navigaciju je fiksirana na vrhu ekrana" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Format datuma" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Željeni format za prikazivanje datuma" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Raspoređivanje dela" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Prikaži informacije o raspoređivanju dela" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Popis dela" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Prikazuj informacije o popisu dela (ukoliko je omogućena funkcionalnost popisa)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Dužina stringa u tabeli" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Maksimalna dužina stringova je prikazana u tabelarnom pregledu" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Primaj izveštaje o greškama" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "Primaj notifikacije za sistemske greške" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "Poslednje korišćene mašine za štampanje" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "Sačuvaj poslednju korišćenu mašinu za štampanje za korisnika" @@ -3530,7 +3540,7 @@ msgstr "Broj telefona kontakta" msgid "Contact email address" msgstr "Email adresa kontakta" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Kontakt" @@ -3575,7 +3585,7 @@ msgstr "Da li ova kompanija proizvodi delove?" msgid "Default currency used for this company" msgstr "Podrazumevana valuta za ovu kompaniju" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Adrese" @@ -3672,7 +3682,7 @@ msgstr "Link za adresne informacije (eksterni)" msgid "Manufacturer Part" msgstr "Deo proizvođača" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Osnovni deo" @@ -3714,7 +3724,7 @@ msgstr "Naziv parametra" msgid "Parameter value" msgstr "Vrednost parametra" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Jedinice" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Povezani delovi dobavljača moraju referencirati isti osnovni deo" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Opis dela dobavljača" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Opis dela dobavljača" msgid "Note" msgstr "Beleška" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "osnovni trošak" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimalna naplata (npr. taksa za slaganje)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Pakovanje" @@ -3802,7 +3812,7 @@ msgstr "Količina pakovanja" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Ukupna količina dostavljena u jednom pakovanju. Ostaviti prazno za pojedinačne stavke." -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "više" @@ -3978,7 +3988,7 @@ msgstr "Originalni podaci vrste" msgid "Errors" msgstr "Greške" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Važeće" @@ -4078,7 +4088,7 @@ msgstr "Broj kopija za štampanje od svakog natpisa" msgid "Connected" msgstr "Konektovano" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Nepoznato" @@ -4166,101 +4176,101 @@ msgstr "Mašinska konfiguracija" msgid "Config type" msgstr "Tip konfiguracije" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Referenca naloga" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "Izvanredno" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "Ima šifru projekta" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Kreirano do strane" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "Kreirano pre" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "Kreirano nakon" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "Krajnji datum pre" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "Krajnji datum nakon" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "Ima cenu" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "Završen pre" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "Završen nakon" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Nalog" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "Nalog završen" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Interni deo" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "Nalog na čekanju" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Završeno" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "Ima isporuku" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Nalog za kupovinu" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Nalog za kupovinu" msgid "Sales Order" msgstr "Nalog za prodaju" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Nalog za vraćanje" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Ukupna cena" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "Totalna cena ovog naloga" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Valuta naloga" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "Valuta za ovaj nalog (ostaviti prazno za podrazumevanu valutu kompanije)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "Kontakt se ne poklapa sa izabranom kompanijom" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Opis naloga (opciono)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Izaberi šifru projekta za ovaj nalog" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Link ka eksternoj stranici" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Ciljani datum" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Očekivani datum za isporuku. Nalog će biti zastareo nakon ovog datuma." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Datum izdavanja" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Datum kada je nalog izdat" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Korisnik ili grupa odgovorni za ovaj nalog" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "Lice za kontakt za ovaj nalog" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "Adresa kompanije za ovaj nalog" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Referenca naloga" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Status naloga za kupovinu" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Kompanija od koje su stavke naručene" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Referenca dobavljača" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Referentni kod dobavljača naloga" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "primljeno od strane" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "Datum kada je nalog završen" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Odredište" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "Odredište za primljene stavke" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "Dobavljač dela se mora poklapati sa dobavljačem naloga za kupovinu" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "Količina mora biti pozitivan broj" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Mušterija" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Kompanija kojoj se prodaju stavke" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "Status naloga za prodaju" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Referenca mušterije" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Referentni kod mušterijinog naloga" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Datum isporuke" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "isporučeno od strane" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "Nalog je već završen" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "Nalog je već otkazan" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Samo otvoren nalog može biti označen kao završen" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Nalog ne može biti završen jer ima nepotpunih isporuka" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "Nalog ne može biti završen jer ima nepotpunih alokacija" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "Nalog ne može biti završen jer ima nezavršenih stavki porudbžine" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Količina stavki" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Referenca stavke porudbžine" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Beleške stavke porudbžine" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Krajnji datum za ovu stavku porudbćine (ostaviti prazno za krajnji datum sa naloga)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Opis stavke porudžbine (opciono)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Dodatni kontekst za ovu porudžbinu" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Cena jedinice" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "Stavka porudžbine naloga za kupovinu" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "Deo dobavljača se mora poklapati sa dobavljačem" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Deo dobavljača" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Primljeno" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Broj primljenih stavki" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Kupovna cena" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Kupovna cena jedinice" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "Dodatna porudbžina naloga za kupovinu" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "Stavka porudžbine naloga za prodaju" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Virtuelni deo ne može biti dodeljen nalogu za prodaju" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Samo delovi koji se mogu prodati mogu biti dodeljeni nalogu za prodaju" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Prodajna cena" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Prodajna cena jedinice" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Poslato" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Isporučena količina" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "Isporuka naloga za prodaju" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Datum isporuke" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Datum dostavljanja" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "Datum dostavljanja isporuke" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Provereno od strane" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Korisnik koji je proverio ovu isporuku" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Isporuka" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Broj isporuke" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Broj praćenja" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Informacije o praćenju isporuke" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Broj računa" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Referentni broj za dodeljeni račun" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "Isporuka je već poslata" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "Isporuka nema alocirane stavke sa zaliha" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "Dodatne porudbžine naloga za prodaju" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "Alokacije naloga za prodaju" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "Stavka sa zaliha nije dodeljena" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Ne mogu se alocirati stavke sa zaliha porudbžini sa drugačijim delom" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "Ne mogu se alocirati zalihe porudbžini bez dela" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Alocirana količina ne sme da pređe količinu zaliha" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "Količina mora biti 1 za serijalizovane stavke sa zaliha" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "Nalog za prodaju se ne poklapa sa isporukom" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "Isporuka se ne poklapa sa nalogom za prodaju" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Porudbžina" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Referenca isporuke naloga za prodaju" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Stavka" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Izaberi stavku sa zaliha za alokaciju" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Unesi količinu za alokaciju zaliha" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "Referenca naloga za vraćanje" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "Kompanija čije stavke su vraćene" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Status naloga za vraćanje" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "Vrati stavku porudbžine" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "Stavka sa zaliha mora biti određena" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "Količina vraćanja je premašila količinu zaliha" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "Količina vraćanja mora biti veća od nule" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "Nevažeća količina za serijalizovane stavke sa zaliha" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Izaberi stavku za vraćanje od mušterije" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Primljeno datuma" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "Datum kada je ova vraćena stavka primljena" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Ishod" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "Ishod za ovu stavku porudžbine" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "Trošak asociran sa popravkom ili vraćanjem ove stavke porudžbine" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "Doda" @@ -4808,7 +4820,7 @@ msgstr "Spoj stavke sa istim delom, odredištem i ciljanim datumom u jednu stavk msgid "SKU" msgstr "Jedinica za praćenje zaliha" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Interni broj dela" @@ -4848,7 +4860,7 @@ msgstr "Izaberi odredišnu lokaciju za primljene stavke" msgid "Enter batch code for incoming stock items" msgstr "Unesi šifru ture za nadolazeće stavke sa zaliha" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Datum isteka" @@ -5005,905 +5017,914 @@ msgstr "Refundiraj" msgid "Reject" msgstr "Odbij" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Istekli nalozi za kupovinu" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "Nalog za kupovinu {po} je sada istekao" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Istekli nalozi za prodaju" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "Nalog za prodaju {so} je sada istekao" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "Označeno zvezdicom" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "Filtiraj po kategorijama označenim zvezdicom" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "Dubina" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "Filtriraj po dubini kategorije" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "Vrhovni" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "Filtriraj po vrhovnim kategorijama" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "Kaskadno" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "Uključi pod-kategorije u filtriranim rezultatima" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "Nadređen" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "Filtriraj po nadređenoj kategoriji" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "Ne uključuj pod-kategorije pod specifičnom kategorijom" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "Ima rezultate" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Dolazeći nalozi za kupovinu" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "Odlazeći nalozi za prodaju" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "Zalihe proizvedene od strane naloga za izradu" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "Zalihe potrebne za nalog za izradu" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Validiraj ceo spisak materijala" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Ova opcija mora biti selektovana" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "Je revizija" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "Ima revizije" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "Spisak materijala validan" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "Deo sklopa se može testirati" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "Deo komponente se može testirati" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "Koristi" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Kategorija dela" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Kategorije delova" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Podrazumevana lokacija" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Podrazumevana lokacija za delove ove kategorije" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Strukturno" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Delovi ne mogu biti direktno dodeljene strukturnoj kategoriji, ali mogu biti dodeljeni podređenim kategorijama." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Podrazumevane ključne reči" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Podrazumevane ključne reči za delove ove kategorije" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Ikonica" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Ikonica (opciono)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Ova kategorija dela se ne može podesiti kao strukturna jer već ima dodeljene neke delove!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Delovi" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "Ovaj deo se ne može izbrisati jer je zaključan" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "Ovaj deo se ne može izbrisati jer je i dalje aktivan" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "Ovaj deo se ne može obrisati jer se koristi u sklopu" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Nevažeći izbor za nadređeni deo" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Deo '{self}' ne može biti korišćen u spisku materijala za '{parent}' (recursive)" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Deo '{parent}' se koristi u spisku materijala za '{self}' (recursive)" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "Interni broj dela se mora slagati sa regex šablonom {pattern}" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "Deo ne može biti revizija samog sebe" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "Ne može se kreirati revizija dela koji je već revizija" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "Šifra revizije mora biti dostavljena" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "Revizije su dozvoljene samo za delove sklopove" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "Ne može se izvršiti revizija šablonskog dela" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "Nadređeni deo mora biti vezan sa istim šablonom" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Stavka sa ovim serijskim brojem već postoji" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "Duplirani interni brojevi dela nisu dozvoljeni u podešavanjima dela" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "Identična revizija dela već postoji" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Deo sa ovim nazivom, internim brojem dela i revizijom već postoji" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "Delovi ne mogu biti dodeljeni strukturnim kategorijama delova!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Naziv dela" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Jeste šablon" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Da li je ovaj deo šablonski deo?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Da li je ovaj deo varijanta drugog dela?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Varijanta od" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "Opis dela (opciono)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Ključne reči" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Ključne reči dela da bi se poboljšala vidljivost u rezultatima pretrage" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Kategorija dela" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "Interni broj dela" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Revizija dela ili broj verzije" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Revizija" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "Da li je ovaj deo revizija drugog dela?" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "Revizija od" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "Gde je ova stavka inače skladištena?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Podrazumevani dobavljač" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Podrazumevani deo dobavljača" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Podrazumevani istek" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Vreme isteka (u danima) za stavke sa zaliha ovog dela" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Minimalne zalihe" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Minimalni dozvoljen nivo zaliha" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Jedinice mere za ovaj deo" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Da li ovaj deo može biti izgrađen od drugih delova?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Da li ovaj deo može biti korišćen za izradu drugih delova?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Da li ovaj deo ima praćenje za više stavki?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "Da li ovaj deo može imati svoje rezultate testa?" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "Da li ovaj deo može biti kupljen od eksternih dobavljača?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Da li ovaj deo može biti prodat mušterijama?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Da li je ovaj deo aktivan?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "Zaključani delovi se ne mogu menjati" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "Da li je ovo virtuelni deo, kao na primer softver ili licenca?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Suma spiska materijala" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Uskladištena suma spiska materijala" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "Spisak materijala proveren od strane" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "Spisak materijala proveren datuma" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Korisnik koji je kreirao" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "Vlasnik odgovoran za ovaj deo" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Poslednji popis" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Prodaj više" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "Valuta korišćena za vršenje proračuna o cenama" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Minimalna vrednost spiska materijala" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "Minimalna vrednost komponenti delova" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Maksimalna vrednost spiska materijala" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "Maksimalna vrednost komponenti delova" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Minimalna kupovna vrednost" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "Minimalna istorijska kupovna vrednost" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Maksimalna kupovna vrednost" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "Maksimalna istorijska kupovna vrednost" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "Minimalna interna cena" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "Minimalna cena bazirana na internim sniženjima cena" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "Maksimalna interna cena" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "Maksimalna vrednost bazirana na internim sniženjima cena" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "Minimalna cena dobavljača" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "Minimalna cena dela od eksternih dobavljača" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "Maksimalna cena dobavljača" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "Maksimalna cena dela od eksternih dobavljača" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Minimalna vrednost varijanti" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "Izračunata minimalna vrednost varijanti delova" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Maksimalna vrednost varijanti" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "Izračunata maksimalna vrednost varijanti delova" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Minimalna vrednost" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "Promeni minimalnu vrednost" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Maksimalna vrednost" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "Promeni maksimalnu vrednost" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "Ukupna izračunata minimalna vrednost" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "Ukupna izračunata maksimalna vrednost" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "Minimalna prodajna cena" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "Minimalna prodajna cena bazirana na osnovu sniženja cena" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "Maksimalna prodajna cena" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "Maksimalna prodajna cena bazirana na osnovu sniženja cena" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Minimalna prodajna vrednost" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "Minimalna istorijska prodajna cena" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Maksimalna prodajna vrednost" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "Maksimalna istorijska prodajna cena" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "Deo za popis" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Broj stavki" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "Broj individualnih unosa zaliha u vreme popisa" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "Ukupne dostupne zalihe za vreme popisa" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Datum" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "Datum kada je izvršen popis" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Dodatne beleške" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "Korisnik koji je izvršio ovaj popis" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Minimalna vrednost zaliha" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "Procenjena minimalna vrednost trenutnih zaliha" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "Maksimalna vrednost zaliha" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "Procenjena maksimalna vrednost trenutnih zaliha" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Izveštaj" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "Fajl izveštaja o popisu (interno generisan)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Broj delova" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "Broj delova pokrivenih popisom" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "Korisnik koji je tražio ovaj izveštaj o popisu" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "Smanjenje prodajne cene dela" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "Šablon testa dela" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "Nevažeći naziv šablona - mora da uključuje bar jedan alfanumerički karakter" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "Izbori moraju biti jedinstveni" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "Test šabloni mogu biti kreirani samo za delove koje je moguće testirati" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "Test šablon sa istim ključem već postoji za ovaj deo" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Naziv testa" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Unesi naziv za ovaj test" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "Test ključ" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "Pojednostavljen ključ za test" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Opis testa" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Unesi opis za ovaj test" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Omogućen" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "Da li je ovaj test omogućen?" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Neophodno" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "Da li je neophodno da ovaj test prođe?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Zahteva vrednost" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "Da li ovaj test zahteva vrednost prilikom dodavanja rezultata testa?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Zahteva prilog" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "Da li ovaj test zahteva fajl kao prilog prilikom dodavanja rezultata testa?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Izbori" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "Validni izbori za ovaj test (razdvojeni zapetom)" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "Šablon parametra dela" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "Checkbox parametri ne mogu imati jedinice" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "Checkbox parametri ne mogu imati izbore" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "Ime šablona parametra mora biti jedinstveno" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Naziv parametra" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "Fizičke jedinice za ovaj parametar" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "Opis parametra" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "Polje za potvrdu" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "Da li je ovaj parametar checkbox?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "Validni izbori za ovaj parametar (razdvojeni zapetom)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "Lista izbora za ovaj parametar" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "Parametar dela" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "Parametar se ne može modifikovati - deo je zaključan" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "Nije validan izbor za vrednost parametra" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Nadređeni deo" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Šablon parametra" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Vrednost parametra" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "Šablon parametara kategorije dela" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Podrazumevana vrednost" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Podrazumevana vrednost parametra" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "Stavke sa spiska materijala se ne mogu modifikovati - sklapanje je zaključano" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "Stavke sa spiska materijala se ne mogu modifikovati - sklapanje varijanti je zaključano" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Izaberi nadređeni deo" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Pod-deo" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Izaberi deo koji će biti korišćen u spisku materijala" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "Količina spiskova materijala za ovu stavku sa spiska materijala" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Ova stavka sa spiska materijala je opciona" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Ova stavka sa spiska materijala se može potrošiti (nije praćena u nalozima za izradu)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Prestarelo" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Procenjena količina otpada prilikom izrade (apsolutna ili u procentima)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Referenca stavke sa spiska materijala" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Beleške stavki sa spiska materijala" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Suma" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "Suma spiska materijala" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Validirano" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "Ova stavka sa spiska materijala je validirana" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "Biva nasleđeno" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Ova stavka sa spiska materijala je nasleđivana od spiska materijala za varijante delova" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Stavke sa zaliha za varijante delova se mogu koristiti za ovu stavku sa spiska materijala" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "Količina mora biti ceo broj za delove koji se mogu pratiti" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "Zamenski deo mora biti određen" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "Zamenska stavka sa spiska materijala" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "Zamenski deo ne može biti isti kao glavni deo" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Nadređena stavka sa spiska materijala" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Zamenski deo" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Deo 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Deo 2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Izaberi povezan deo" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "Beleška za ovu relaciju" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "Relacija između delova ne može biti kreirana između jednog istog dela" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "Identična veza već postoji" @@ -6315,83 +6336,83 @@ msgstr "Nema određene akcije" msgid "No matching action found" msgstr "Nema poklapajuće akcije" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Nema poklapanja za podatke sa bar koda" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Pronađeno poklapanje za podatke sa bar koda" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "Model nije podržan" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "Instanca modela nije pronađena" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "Bar kod se poklapa sa postojećom stavkom" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "Nema podudarajućih podataka o delovima" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "Nema pronađenih podudarajućih delova dobavljača" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "Više podudarajućih delova dobavljača pronađeno" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "Nema podudarajućeg plugina za podatke sa bar koda" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "Podudarajući deo dobavljača" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "Stavka je već primljena" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "Nijedan plugin se ne poklapa sa dobavljačevim bar kodom" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "Više pronađenih poklapajućih stavki porudžbine" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "Nema podudarajućih stavki porudbžine pronađenih" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "Nema dostavljenih naloga za prodaju" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "Bar kod se ne poklapa sa postojećom stavkom sa zaliha" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "Stavka sa zaliha se ne podudara sa stavkom porudbžine" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "Nedovoljno dostupnih stavki" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "Stavka alocirana nalogu za prodaju" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "Nema dovoljno informacija" @@ -6834,7 +6855,7 @@ msgstr "Border" msgid "Print a border around each label" msgstr "Štampa border oko svakog natpisa" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "Lendskejp" @@ -7011,17 +7032,17 @@ msgstr "Metod" msgid "No author found" msgstr "Nije pronađen autor" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "Plugin '{p}' nije kompatibilan sa trenutnom verzijom aplikacije {v}" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "Plugin zahteva najmanje verziju {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "Plugin zahteva najviše verziju {v}" @@ -7258,116 +7279,116 @@ msgstr "Legal" msgid "Letter" msgstr "Letter" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "Šablonski fajl sa ovim imenom već postoji" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Ime šablona" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "Opis šablona" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "Broj revizija (auto-inkrement)" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "Priloži kao model uz štampanje" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "Sačuvaj izveštaj kao prilog uz uvezanu instancu modela prilikom štampanja" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Šablon imena fajlova" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "Šablon za generisanje imena fajlova" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "Šablon je omogućen" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "Tip ciljanog modela za šablon" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filteri" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "Filteri upita nad šablonima (lista razdvojena zarezom ključ=vrednost parova)" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "Šablonski fajl" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "Veličina strane za PDF izveštaje" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "Renderuj izveštaj u landscape orijentaciji" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Širina (u milimetrima)" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Širina natpisa, u milimetrima" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Visina (u milimetrima)" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Visina natpisa, u milimetrima" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Isečak" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "Izveštaj isečka fajla" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Opis isečka fajla" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Sredstvo" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "Izveštaj fajla sredstva" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "Opis fajla sredstva" @@ -7449,7 +7470,7 @@ msgstr "Ukupno" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Serijski broj" @@ -7639,313 +7660,313 @@ msgstr "Deo dobavljača ima definisanu veličinu pakovanja, ali fleg use_pack_si msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Serijski brojevi ne mogu biti dostavljeni za deo koji nije moguće pratiti" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "Tip lokacije zaliha" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "Tipovi lokacija zaliha" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "Podrazumevana ikonica za sve lokacije koje nemaju podešenu ikonicu (opciono)" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Lokacija zaliha" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Lokacija zaliha" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Vlasnik" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Izaberi vlasnika" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Stavke sa zaliha ne mogu biti direktno locirane u strukturnim lokacijama zaliha, ali mogu biti locirane u podređenim lokacijama." -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Eksterna" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "Ovo je eksterna lokacija zaliha" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "Tip lokacije" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "Tip lokacija zaliha za ovu lokaciju" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "Ne možete postaviti ovu lokaciju zaliha kao strukturnu jer su već neke stavke locirane na njoj!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "Deo mora biti određen" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "Stavka sa zaliha ne može biti locirana u strukturnim lokacijama zaliha!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "Stavka sa zaliha ne može biti kreirana za virtuelne delove" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "Deo tipa ('{self.supplier_part.part}') mora biti {self.part}" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "Količina mora biti 1 za stavku sa serijskim brojem" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Serijski broj ne može biti postavljen ukoliko je količina veća od 1" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "Stavka ne može da pripada samoj sebi" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "Stavka mora da ima referencu izgradnje ukoliko is_building=True" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "Referenca izgradnje ne ukazuje na isti objekat dela" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Nadređena stavka sa zaliha" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Osnovni deo" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Izaberi odgovarajući deo dobavljača za ovu stavku sa zaliha" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "Gde je locirana ova stavka sa zaliha?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Pakovanje u kom je ova stavka sa zaliha" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Instalirano u" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "Da li je ova stavka instalirana u drugu stavku?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Serijski broj za ovu stavku" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Šifra ture za ovu stavku sa zaliha" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Količina zaliha" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Izvorna gradnja" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Nalog za ovu stavku sa zaliha" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Potrošeno od strane" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "Nalog za izradu koji je potrošio ovu stavku sa zaliha" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Izvorni nalog za kupovinu" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Nalog za kupovinu za ovu stavku sa zaliha" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "Odredište naloga za prodaju" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Datum isteka za stavku sa zaliha. Zalihe će se smatrati isteklim nakon ovog datuma" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Obriši kad je potrošeno" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Obriši ovu stavku sa zaliha kada su zalihe potrošene" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "Cena kupovine jedne jedinice u vreme kupovine" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "Konvertovano u deo" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "Deo nije postavljen kao deo koji je moguće pratiti" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "Količina mora biti ceo broj" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Količina ne sme da pređe dostupnu količinu zaliha ({self.quantity})" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "Serijski brojevi moraju biti dostavljeni kao lista" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "Količine se ne poklapaju sa serijskim brojevima" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "Test šablon ne postoji" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Stavka sa zaliha je dodeljena nalogu za prodaju" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Stavka sa zaliha je instalirana u drugu stavku" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "Stavka sa zaliha sadrži druge stavke" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Stavka sa zaliha je dodeljena mušteriji" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "Stavka sa zaliha je trenutno u produkciji" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "Serijalizovane zalihe se ne mogu spojiti" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Dupliraj stavke sa zaliha" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Stavke sa zaliha se moraju odnositi na isti deo" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Stavke sa zaliha se moraju odnositi na isti deo dobavljača" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "Statusne šifre zaliha moraju da se poklapaju" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stavka se ne može pomeriti jer nije na zalihama" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "Praćenje stavke sa zaliha" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Ulazne beleške" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "Rezultat testa stavke sa zaliha" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Vrednost mora biti dostavljena za ovaj test" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "Prilog mora biti dostavljen za ovaj test" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "Nevažeća vrednost za ovaj test" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Rezultat testa" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Vrednost završetka testa" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Prilog uz test rezultat" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Beleške sa testa" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "Stanica za testiranje" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "Identifikator stanice za testiranje gde je test izvršen" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "Započeto" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "Vreme početka testa" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "Završeno" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "Vreme završetka testa" @@ -8401,6 +8422,7 @@ msgstr "Postoje migracije nad bazom podataka koje zahtevaju pažnju" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Korisnici" msgid "Select which users are assigned to this group" msgstr "Odaberi koje korisnike želiš da dodaš u ovu grupu" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "Sledeći korisnici su članovi više grupa" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Lični podaci" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Dozvole" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Značajni datumi" diff --git a/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po index 909a4d1dd0..27f510dfae 100644 --- a/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Language: sv_SE\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API-slutpunkt hittades inte" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Användaren har inte behörighet att se denna modell" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Kunde inte konvertera {original} till {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Ogiltigt antal angivet" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Värdet '{name}' visas inte i mönsterformat" msgid "Provided value does not match required pattern: " msgstr "Det angivna värdet matchar inte det obligatoriska mönstret: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Tom serienummersträng" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Serienummret finns redan" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Ogiltig grupp: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Gruppintervall {group} överstiger tillåtet antal ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Inga serienummer hittades" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Antal unika serienummer ({len(serials)}) måste matcha antal ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Ta bort HTML-taggar från detta värde" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Ogiltigt val" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Namn" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Beskrivning" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Beskrivning (valfritt)" @@ -470,11 +470,11 @@ msgstr "Serverfel" msgid "An error has been logged by the server." msgstr "Ett fel har loggats av servern." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Måste vara ett giltigt nummer" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Valuta" @@ -522,28 +522,29 @@ msgstr "Överskott får inte överstiga 100%" msgid "Invalid value for overage" msgstr "Ogiltigt värde för överskott" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Orderstatus" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Föregående tillverkning" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Del" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Kategori" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Utfärdad av" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Tillverkningen måste avbrytas innan den kan tas bort" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Valfri" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Spårad" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Testbar" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Allokerad" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Tillgänglig" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Byggorder" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Byggordrar" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Ogiltigt val för överordnad bygge" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Tillverknings order referens" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Tillverknings order referens" msgid "Reference" msgstr "Referens" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Tillverknings order till vilken detta produkt är tilldelad" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Välj del att tillverka" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Försäljningsorderreferens" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Försäljningsorder till vilken detta bygge allokeras" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Källa Plats" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Välj plats att ta lager från för detta bygge (lämna tomt för att ta från någon lagerplats)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Destinationsplats" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Välj plats där de färdiga objekten kommer att lagras" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Tillverkat antal" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Antal lagerobjekt att bygga" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Slutförda objekt" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Antal lagerposter som har slutförts" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Tillverknings status" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Tillverkning statuskod" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Batchkod" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Batch-kod för denna byggutdata" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Skapad" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Datum för slutförande" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Måldatum för färdigställande. Tillverkningen kommer att förfallas efter detta datum." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Slutförandedatum" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "slutfört av" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Utfärdad av" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Användare som utfärdade denna tillverknings order" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Ansvarig" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Extern länk" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Länk till extern URL" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Projektkod" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Tillverknings order {build} har slutförts" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "En tillverknings order har slutförts" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Ingen byggutgång angiven" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Byggutgång är redan slutförd" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Byggutgång matchar inte bygg order" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "Antal" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Byggobjekt måste ange en byggutgång, eftersom huvuddelen är markerad som spårbar" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Tilldelad kvantitet ({q}) får inte överstiga tillgängligt lagersaldo ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Lagerposten är överallokerad" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Allokeringsmängden måste vara större än noll" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Antal måste vara 1 för serialiserat lager" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Artikel i lager" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Källa lagervara" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Lagersaldo att allokera för att bygga" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Installera till" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Destination lagervara" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "Plats för färdiga produkter" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "Slutför" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Användare" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktiv" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Länk" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Bilaga" @@ -1716,7 +1718,7 @@ msgstr "Filstorlek" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Schemalagda uppgifter" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Filnamn" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Mall" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Virtuell" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Sidstorlek" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Datumformat" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Kontakt" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Adress" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "Har projektkod" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Slutförd" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "Försäljningsorder" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Måldatum" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Mål" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Kund" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Skickad" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Leveransdatum" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Fakturanummer" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "Återbetala" msgid "Reject" msgstr "Avvisa" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Ikon" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Ikon (valfritt)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Artiklar" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Nyckelord" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Standardleverantör" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Datum" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "Ingen åtgärd specificerad" msgid "No matching action found" msgstr "Ingen matchande åtgärd hittades" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Serienummer" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Användare" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po index be3ec249aa..6de7abb3c2 100644 --- a/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Thai\n" "Language: th_TH\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "ไม่พบ API endpoint" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "ปริมาณสินค้าไม่ถูกต้อง" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "หมายเลขซีเรียลซ้ำกัน" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "ไม่พบหมายเลขซีเรียล" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "ชื่อ" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "คำอธิบาย" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "เกิดข้อผิดพลาดที่เซิร์ฟเ msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "ต้องเป็นตัวเลข" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "สกุลเงิน" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "ออกโดย" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "จำนวนต้องมีค่ามากกว่า 0" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "สำเร็จแล้ว" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "ผู้ใช้งาน" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "ลิงก์" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "ไฟล์แนบ" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "ชื่อไฟล์" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "สำเร็จแล้ว" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "จัดส่งแล้ว" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "ชิ้นส่วน" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po index 7f0978db7c..20a9d40657 100644 --- a/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "Başka bir şey yapmadan önce iki faktörlü kimlik doğrulamayı etkinleştirme gerekir." -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API uç noktası bulunamadı" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "Geçersiz ögeler listesi sağlandı" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "Geçersiz filtreler sağlandı" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Kullanıcının bu modeli görüntüleme izni yok" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "{original} birimi {unit} birimine dönüştürülemedi" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Geçersiz veri sağlandı" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "Geçersiz ondalık değer" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "'{name}' değeri desen formatında yer almıyor" msgid "Provided value does not match required pattern: " msgstr "Sağlanan değer gerekli kalıpla eşleşmiyor: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "Geçersiz grup: {grup}" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Boş seri numarası dizesi" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Yinelenen seri" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "Geçersiz grup: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Grup aralığı {group}, izin verilen miktarı aşmaktadır ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Seri numarası bulunamadı" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Benzersiz seri numaralarının sayısı ({len(serials)}) ile miktarın ({expected_quantity}) eşleşmesi gerekmektedir" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Bu değerden HTML etiketlerini kaldır" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "Veriler yasaklanmış işaretleme içeriği içeriyor" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Geçersiz seçim" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Adı" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Açıklama" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Açıklama (isteğe bağlı)" @@ -470,11 +470,11 @@ msgstr "Sunucu Hatası" msgid "An error has been logged by the server." msgstr "Bir hafta sunucu tarafından kayıt edildi." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Geçerli bir numara olmalı" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Para birimi" @@ -522,28 +522,29 @@ msgstr "Fazlalık %100'ü geçmemelidir" msgid "Invalid value for overage" msgstr "Aşım için geçersiz değer" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Sipariş Durumu" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Üst Yapım İşi" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "Varyantları Dahil Et" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "Varyantları Dahil Et" msgid "Part" msgstr "Parça" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Kategori" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Ata Yapım" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Bana atandı" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Veren" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Atanılan Kişi" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "Daha önce oluşturuldu" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "Sonra oluşturuldu" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "Başlangıç tarihi var" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "Başlangıç tarihi önce" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "Başlangıç tarihi sonra" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "Hedef tarihi var" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "Hedef tarihi önce" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "Hedef tarihi sonra" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "Daha önce tamamlandı" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "Sonra tamamlandı" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Yapımın silinebilmesi için önce iptal edilmesi gerekir" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Sarf Malzemesi" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "İsteğe Bağlı" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Montaj" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "İzlenen" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Test Edilebilir" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "Ödenmemiş Sipariş" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Ayrıldı" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Mevcut" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Yapım İşi Emri" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Yapım İşi Emirleri" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Montaj malzeme listesi doğrulanmadı" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "İnaktif bir parça için yapım siparişi oluşturulamaz" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "Kilidi açılmış bir parça için yapım siparişi oluşturulamaz" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Üst yapım için geçersiz seçim" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Sorumlu kullanıcı veya grup belirtilmelidir" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Yapım siparişi parçası değiştirilemez" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "Hedef tarih başlangıç tarihinden sonra olmalıdır" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Yapım İşi Emri Referansı" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Yapım İşi Emri Referansı" msgid "Reference" msgstr "Referans" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Yapımın kısa açıklaması (isteğe bağlı)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Bu yapım işinin tahsis edildiği yapım işi emri" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Yapım işi için parça seçin" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Satış Emri Referansı" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Bu yapım işinin tahsis edildiği satış emri" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Kaynak Konum" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Bu yapım işi için stok alınacak konumu seçin (her hangi bir stok konumundan alınması için boş bırakın)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Hedef Konum" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Tamamlanmış ögelerin saklanacağı konumu seçiniz" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Yapım İşi Miktarı" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Yapım işi stok kalemlerinin sayısı" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Tamamlanmış ögeler" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Tamamlanan stok kalemlerinin sayısı" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Yapım İşi Durumu" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Yapım işi durum kodu" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Sıra numarası" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Yapım işi çıktısı için sıra numarası" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Oluşturulma tarihi" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "İhtiyaca bağlı sipariş başlangıç tarihi" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "Bu ihtiyaca bağlı siparişi için planlanan başlangıç tarihi" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Hedef tamamlama tarihi" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Yapım işinin tamamlanması için hedef tarih. Bu tarihten sonra yapım işi gecikmiş olacak." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Tamamlama tarihi" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "tamamlayan" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Veren" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Bu yapım işi emrini veren kullanıcı" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Sorumlu" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Bu yapım siparişinden sorumlu kullanıcı veya grup" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Harici Bağlantı" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Harici URL'ye bağlantı" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Yapım Önceliği" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Bu yapım siparişinin önceliği" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Proje Kodu" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Bu yapım siparişi için proje kodu" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Yapıma ayrılanları tamamlamak için boşaltma görevi başarısız oldu" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "{build} yapım siparişi tamamlandı" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Bir yapım siparişi tamamlandı" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "İzlenebilir parçalar için seri numaraları sağlanmalıdır" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Yapım işi çıktısı belirtilmedi" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Yapım işi çıktısı zaten tamamlanmış" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Yapım işi çıktısı, yapım işi emri ile eşleşmiyor" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Miktar sıfırdan büyük olmalıdır" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Miktar çıktı miktarından büyük olamaz" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "{serial} yapım çıktısı gerekli testleri geçemedi" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Yapım Siparişi Satır Ögesi" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Nesne yap" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Nesne yap" msgid "Quantity" msgstr "Miktar" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Yapım siparişi için gereken miktar" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Ana parça izlenebilir olarak işaretlendiğinden, yapım işi çıktısı için bir yapım işi ögesi belirtmelidir" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Ayrılan miktar ({q}) mevcut stok miktarını ({a}) aşmamalı" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Stok kalemi fazladan tahsis edilmiş" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Tahsis edilen miktar sıfırdan büyük olmalıdır" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Seri numaralı stok için miktar bir olmalı" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Seçilen stok ögesi malzeme listesi satırıyla eşleşmiyor" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Stok Kalemi" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Kaynak stok kalemi" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Yapım işi için tahsis edilen stok miktarı" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Kurulduğu yer" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Hedef stok kalemi" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Gerekli ögeleri eşleşen seri numaralarıyla otomatik ayır" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Şu seri numaraları zaten varlar veya geçersizler" @@ -1107,8 +1109,8 @@ msgstr "Yapım çıktı(larını) hurdaya ayırma nedeni" msgid "Location for completed build outputs" msgstr "Tamamlanan yapım çıktıları içi konum" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "ML Parça Adı" msgid "Build" msgstr "Yap" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Tedarikçi Parçası" @@ -1313,7 +1315,7 @@ msgstr "Yapım Referansı" msgid "Part Category Name" msgstr "Parça Sınıfı Adı" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Takip Edilebilir" @@ -1321,12 +1323,12 @@ msgstr "Takip Edilebilir" msgid "Inherited" msgstr "Miras Alındı" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Çeşide İzin Ver" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "ML Ögesi" @@ -1389,11 +1391,11 @@ msgstr "Tamamlandı" msgid "Stock required for build order" msgstr "Yapım siparişi için gereken stok" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Gecikmiş Yapım Siparişi" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "{bo} yapım siparişi şimdi gecikti" @@ -1485,8 +1487,8 @@ msgstr "Anahtar dizesi benzersiz olmalı" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Kullanıcı" msgid "Price break quantity" msgstr "Fiyat düşürme miktarı" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Fiyat" @@ -1519,7 +1521,7 @@ msgstr "Bu web kancası için ad" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Aktif" @@ -1598,8 +1600,8 @@ msgstr "Başlık" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Bağlantı" @@ -1624,7 +1626,7 @@ msgstr "Oku" msgid "Was this news item read?" msgstr "Haberi okudunuz mu?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Tanımlama" msgid "Unit definition" msgstr "Birim tanımlaması" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Ek" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Değer" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Yeni {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} iptal edildi" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "Size atanmış bir emir iptal edildi" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Alınan Ürünler" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Çalışıyor" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Bekleyen Görevler" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Planlanan Görevler" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Başarısız Görevler" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "Görev ID" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "Benzersiz Görev ID" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Kilit" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Kilit Zamanı" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Görev Adı" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Fonksiyon" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Fonksiyon Adı" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Argümanlar" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Görev Argümanları" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Anahtar Argümanlar" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Anahtar görev argümanları" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Dosya adı" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "Model Tipi" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "Kategori Paremetre Sablonu Kopyala" msgid "Copy category parameter templates when creating a part" msgstr "Parça oluştururken kategori parametre şablonlarını kopyala" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Şablon" @@ -2423,7 +2425,7 @@ msgstr "Parçaları varsayılan olan şablondur" msgid "Parts can be assembled from other components by default" msgstr "Parçalar varsayılan olarak başka bileşenlerden monte edilebilir" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Bileşen" @@ -2432,7 +2434,7 @@ msgstr "Bileşen" msgid "Parts can be used as sub-components by default" msgstr "Parçalar varsayılan olarak alt bileşen olarak kullanılabilir" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Satın Alınabilir" @@ -2440,7 +2442,7 @@ msgstr "Satın Alınabilir" msgid "Parts are purchaseable by default" msgstr "Parçalar varsayılan olarak satın alınabilir" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Satılabilir" @@ -2452,7 +2454,7 @@ msgstr "Parçalar varsayılan olarak satılabilir" msgid "Parts are trackable by default" msgstr "Parçalar varsayılan olarak takip edilebilir" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Sanal" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "Raporlar üretirken oluşan hataları günlüğe kaydet" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Sayfa Boyutu" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Formlarda Miktarı Göster" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Navigasyon Çubuğunu Sabitle" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Tarih Biçimi" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Parça Planlaması" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Parça planlama bilgilerini görüntüle" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Parça Stoksayımı" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Tablo satır uzunluğu" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "İletişim telefon numarası" msgid "Contact email address" msgstr "İletişim e-posta adresi" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "İletişim" @@ -3575,7 +3585,7 @@ msgstr "Bu şirket üretim yapıyor mu?" msgid "Default currency used for this company" msgstr "Bu şirket için varsayılan para birimi" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Adres" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Temel Parça" @@ -3714,7 +3724,7 @@ msgstr "Parametre adı" msgid "Parameter value" msgstr "Parametre değeri" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Birim" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "Not" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "temel maliyet" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Paketleme" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "çoklu" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Oluşturan" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Tamamlandı" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "Sipariş Emri" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Harici sayfaya bağlantı" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Hedeflenen tarih" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Sipariş referansı" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Hedef" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Müşteri" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Sevk edildi" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Tahsis miktarı stok miktarını aşamaz" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "Seri numaralı stok kalemi için miktar bir olmalı" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Stok tahsis miktarını girin" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Parça Kategorileri" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Varsayılan Konum" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Bu kategori içindeki parçalar için varsayılan konum" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Parçalar" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "Yinelenen DPN'ye parça ayarlarında izin verilmiyor" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Parça adı" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Şablon Mu" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Bu parça bir şablon parçası mı?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Bu parça başka bir parçanın çeşidi mi?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Çeşidi" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Anahtar kelimeler" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "DPN" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Parça revizyon veya versiyon numarası" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Revizyon" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Varsayılan Tedarikçi" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Varsayılan tedarikçi parçası" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Minimum Stok" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Bu parça diğer parçalardan yapılabilir mi?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Bu parça diğer parçaların yapımında kullanılabilir mi?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "Bu parça dış tedarikçilerden satın alınabilir mi?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Bu parça müşterilere satılabilir mi?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Bu parça aktif mi?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Oluşturan Kullanıcı" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Test Adı" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Test Açıklaması" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Etkin" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Gerekli" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "Testi geçmesi için bu gerekli mi?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "Parametre şablon adı benzersiz olmalıdır" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Parametre Şablonu" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Bu malzeme listesi, çeşit parçalar listesini kalıtsalıdır" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Çeşit parçaların stok kalemleri bu malzeme listesinde kullanılabilir" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "İşlem belirtilmedi" msgid "No matching action found" msgstr "Eşleşen eylem bulunamadı" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Barkod verisi için eşleşme bulunamadı" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Barkod verisi için eşleşme bulundu" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Şablon adı" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Dosya Adı Deseni" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Filtreler" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Genişlik [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Etiket genişliği mm olarak belirtilmeli" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Yükseklik [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Etiket yüksekliği mm olarak belirtilmeli" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Seri Numara" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Stok Konumu" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Stok Konumları" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "Seri numarası olan ögenin miktarı bir olmalı" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Miktar birden büyük ise seri numarası ayarlanamaz" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Üst Stok Kalemi" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Bu stok kalemi için tedarikçi parçası seçin" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Bu öge için seri numarası" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "Miktar seri numaları ile eşleşmiyor" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stok kalemi stokta olmadığı için taşınamaz" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Kullanıcılar" msgid "Select which users are assigned to this group" msgstr "Bu gruba atanacak kullanıcıyı seçin" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Kullanıcı bilgisi" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Yetkiler" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Önemli tarihler" diff --git a/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po index 2f5b64d40f..f0e15e54ee 100644 --- a/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "Кінцева точка API не знайдена" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "У користувача немає дозволу на перегляд цієї моделі" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Не вдалося перетворити {original} на {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Невірна кількість" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Пустий серійний номер" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "" @@ -470,11 +470,11 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "" @@ -522,28 +522,29 @@ msgstr "" msgid "Invalid value for overage" msgstr "" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Деталь" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "" msgid "Reference" msgstr "" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Обрати деталь для створення" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "" @@ -1107,8 +1109,8 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "" @@ -1313,7 +1315,7 @@ msgstr "" msgid "Part Category Name" msgstr "" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "" @@ -1321,12 +1323,12 @@ msgstr "" msgid "Inherited" msgstr "" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "" @@ -1389,11 +1391,11 @@ msgstr "" msgid "Stock required for build order" msgstr "" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "" @@ -1485,8 +1487,8 @@ msgstr "" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "" @@ -1519,7 +1521,7 @@ msgstr "" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "" @@ -1598,8 +1600,8 @@ msgstr "" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1624,7 +1626,7 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "" @@ -1963,113 +1965,113 @@ msgstr "" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "" @@ -2423,7 +2425,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "" @@ -2432,7 +2434,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "" @@ -2440,7 +2442,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "" @@ -2452,7 +2454,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "" msgid "Contact email address" msgstr "" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "" @@ -3575,7 +3585,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "" @@ -3672,7 +3682,7 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "" @@ -3714,7 +3724,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "" @@ -3802,7 +3812,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "" msgid "Sales Order" msgstr "" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "" -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "" @@ -4848,7 +4860,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "" @@ -5005,905 +5017,914 @@ msgstr "" msgid "Reject" msgstr "" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "" @@ -6315,83 +6336,83 @@ msgstr "" msgid "No matching action found" msgstr "" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "" @@ -6834,7 +6855,7 @@ msgstr "" msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "" @@ -7011,17 +7032,17 @@ msgstr "" msgid "No author found" msgstr "" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "" @@ -7258,116 +7279,116 @@ msgstr "" msgid "Letter" msgstr "" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "" @@ -7449,7 +7470,7 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "" @@ -7639,313 +7660,313 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "" msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "" diff --git a/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po index d722303106..4209e54bc1 100644 --- a/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:42\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "API endpoint không tồn tại" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "Người dùng không được phân quyền xem mẫu này" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Không thể chuyển đổi {original} sang {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "Số lượng cung cấp không hợp lệ" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "Giá trị '{name}' không xuất hiện ở định dạng mẫu" msgid "Provided value does not match required pattern: " msgstr "Giá trị được cung cấp không khớp với mẫu bắt buộc: " -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "Chuỗi số sê-ri trống" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "Trùng lặp sê-ri" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Khoảng nhóm {group} vượt cho phép số lượng ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Không tìm thấy số sê-ri" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Số sê ri duy nhất ({len(serials)}) phải phù hợp số lượng ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "Xóa thẻ HTML từ giá trị này" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "Lựa chọn sai" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "Tên" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "Mô tả" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "Mô tả (tùy chọn)" @@ -470,11 +470,11 @@ msgstr "Lỗi máy chủ" msgid "An error has been logged by the server." msgstr "Lỗi đã được ghi lại bởi máy chủ." -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "Phải là một số hợp lệ" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "Tiền tệ" @@ -522,28 +522,29 @@ msgstr "Hàng hóa dư thừa không thể vượt quá 100%" msgid "Invalid value for overage" msgstr "Giá trị không hợp lệ cho hàng hóa dư thừa" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "Trạng thái đặt hàng" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "Phiên bản cha" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "" msgid "Part" msgstr "Nguyên liệu" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "Danh mục" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "Xây dựng nguồn gốc" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "Đã gán cho tôi" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "Phát hành bởi" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "Đã gán cho" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "Bạn dựng phải được hủy bỏ trước khi có thể xóa được" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "Vật tư tiêu hao" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "Tuỳ chọn" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "Lắp ráp" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "Đã theo dõi" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "Có thể kiểm tra" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "Đã cấp phát" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "Có sẵn" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "Tạo đơn hàng" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "Tạo đơn hàng" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "Dây chuyền BOM chưa được xác thực" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "Không thể tạo đơn hàng cho hàng hoá đang không hoạt động" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "Không thể tạo đơn hàng cho hàng hoá đang mở khoá" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "Lựa chọn sai cho bản dựng cha" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "Phải chọn người dùng hoặc nhóm" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "Sản phẩm đơn đặt bản dựng không thể thay đổi được" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Tham chiếu đơn đặt bản dựng" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "Tham chiếu đơn đặt bản dựng" msgid "Reference" msgstr "Tham chiếu" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "Mô tả ngắn về phiên bạn (Tùy chọn)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "Đơn đặt bản dựng với bản dựng này đã được phân bổ" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "Chọn sản phẩm để xây dựng" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "Tham chiếu đơn đặt bản dựng" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "Đơn đặt bán hàng với bản dựng này đã được phân bổ" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "Địa điểm nguồn" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Chọn địa điểm để lấy trong kho cho bản dựng này (để trống để lấy từ bất kỳ vị trí kho nào)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "Địa điểm đích" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Chọn địa điểm nơi hàng hóa hoàn thiện sẽ được lưu kho" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "Xây dựng số lượng" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Số kho hàng để dựng" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "Những mục hoàn thành" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Số sản phẩm trong kho đã được hoàn thiện" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "Trnạg thái bản dựng" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "Mã trạng thái bản dựng" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "Mã lô hàng" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "Mã lô cho đầu ra bản dựng này" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "Ngày tạo" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "Ngày hoàn thành mục tiêu" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Ngày mục tiêu để hoàn thành bản dựng. Bản dựng sẽ bị quá hạn sau ngày này." -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "Ngày hoàn thành" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "hoàn thành bởi" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "Cấp bởi" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "Người dùng người đã được phân công cho đơn đặt bản dựng này" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Chịu trách nhiệm" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "Người dùng hoặc nhóm có trách nhiệm với đơn đặt bản dựng này" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "Liên kết bên ngoài" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "Liên kết đến URL bên ngoài" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "Độ ưu tiên" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "Độ quan trọng của đơn đặt bản dựng" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "Mã dự án" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "Mã dự án cho đơn đặt bản dựng này" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "Không thể dỡ bỏ tác vụ để hoàn tất phân bổ" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Đơn đặt bản dựng {build} đã được hoàn thành" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "Một đơn đặt bản dựng đã được hoàn thành" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "Số sê-ri phải được cung cấp cho hàng hoá có thể theo dõi" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "Không có đầu ra bản dựng đã được chỉ ra" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "Đầu ra bản dựng đã được hoàn thiện" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "Đầu ra bản dựng không phù hợp với đơn đặt bản dựng" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "Số lượng phải lớn hơn 0" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "Số lượng không thể lớn hơn số lượng đầu ra" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Tạo đầu ra {serial} chưa vượt qua tất cả các bài kiểm tra" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "Tạo mục đơn hàng" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "Dựng đối tượng" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "Dựng đối tượng" msgid "Quantity" msgstr "Số lượng" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "Yêu cầu số lượng để dựng đơn đặt" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Xây dựng mục phải xác định đầu ra, bởi vì sản phẩm chủ được đánh dấu là có thể theo dõi" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Số lượng được phân bổ ({q}) không thể vượt quá số lượng có trong kho ({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "Kho hàng đã bị phân bổ quá đà" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "Số lượng phân bổ phải lớn hơn 0" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "Số lượng phải là 1 cho kho sê ri" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "Hàng trong kho đã chọn không phù hợp với đường BOM" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "Kho hàng" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "Kho hàng gốc" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "Số lượng kho hàng cần chỉ định để xây dựng" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "Cài đặt vào" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "Kho hàng đích" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "Tự động cấp số seri phù hợp cho hàng hóa được yêu cầu" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "Số sêri sau đây đã tồn tại hoặc không hợp lệ" @@ -1107,8 +1109,8 @@ msgstr "Lý do loại bỏ đầu ra bản dựng" msgid "Location for completed build outputs" msgstr "Vị trí cho đầu ra bản dựng hoàn thiện" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "Tên hàng hoá BOM" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "Sản phẩm nhà cung cấp" @@ -1313,7 +1315,7 @@ msgstr "Tạo liên quan" msgid "Part Category Name" msgstr "Tên danh mục hàng hoá" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "Có thể theo dõi" @@ -1321,12 +1323,12 @@ msgstr "Có thể theo dõi" msgid "Inherited" msgstr "Được kế thừa" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "Cho phép biến thể" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "Mục BOM" @@ -1389,11 +1391,11 @@ msgstr "Hoàn thành" msgid "Stock required for build order" msgstr "Kho được yêu cầu cho đặt hàng bản dựng" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "Đơn đặt bản dựng quá hạn" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "Đặt hàng bản dựng {bo} đang quá hạn" @@ -1485,8 +1487,8 @@ msgstr "Chuỗi khóa phải duy nhất" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "Người dùng" msgid "Price break quantity" msgstr "Số lượng giá phá vỡ" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "Giá" @@ -1519,7 +1521,7 @@ msgstr "Tên của webhook này" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "Hoạt động" @@ -1598,8 +1600,8 @@ msgstr "Tiêu đề" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Liên kết" @@ -1624,7 +1626,7 @@ msgstr "Đọc" msgid "Was this news item read?" msgstr "Tin này đã được đọc?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "Định nghĩa" msgid "Unit definition" msgstr "Định nghĩa đơn vị" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "Đính kèm" @@ -1716,7 +1718,7 @@ msgstr "" msgid "File size in bytes" msgstr "" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "Giá trị" @@ -1814,7 +1816,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "Dữ liệu" @@ -1938,7 +1940,7 @@ msgstr "" msgid "URL endpoint which processed the barcode" msgstr "" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "Ngữ cảnh" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "Kết quả" @@ -1963,113 +1965,113 @@ msgstr "Kết quả" msgid "Was the barcode scan successful?" msgstr "" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "Mới {verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "Một đơn đặt hàng mới đã được tạo và phân công cho bạn" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} đã bị hủy" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "Một đơn đặt từng được phân công cho bạn đã bị hủy bỏ" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "Mục đã nhận" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "Hàng đã được nhận theo đơn đặt mua" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "Hàng đã nhận theo đơn hàng trả lại" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "Lỗi được thông báo bởi phần mở rộng" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "Đang chạy" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "Công việc chờ xử lý" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "Tác vụ theo lịch" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "Tác vụ thất bại" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "ID tác vụ" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "ID tác vụ duy nhất" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "Khoá" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "Thời gian khóa" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "Tên công việc" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "Chức năng" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "Tên chức năng" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "Đối số" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "Đối số công việc" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "Đối số từ khóa" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "Đối số từ khóa công việc" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "Tên tập tin" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "Sao chéo mẫu tham số danh mục" msgid "Copy category parameter templates when creating a part" msgstr "Sao chéo mẫu tham số danh mục khi tạo 1 sản phẩm" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "Mẫu" @@ -2423,7 +2425,7 @@ msgstr "Sản phẩm là mẫu bởi mặc định" msgid "Parts can be assembled from other components by default" msgstr "Sản phẩm có thể lắp giáp từ thành phần khác theo mặc định" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "Thành phần" @@ -2432,7 +2434,7 @@ msgstr "Thành phần" msgid "Parts can be used as sub-components by default" msgstr "Sản phẩm có thể được sử dụng mặc định như thành phần phụ" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "Có thể mua" @@ -2440,7 +2442,7 @@ msgstr "Có thể mua" msgid "Parts are purchaseable by default" msgstr "Sản phẩm mặc định có thể mua được" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "Có thể bán" @@ -2452,7 +2454,7 @@ msgstr "Sản phẩm mặc định có thể bán được" msgid "Parts are trackable by default" msgstr "Sản phẩm mặc định có thể theo dõi được" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "Ảo" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "Khổ giấy" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "Truy vấn tìm trả về kết quả phù hợp toàn bộ chữ" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "Hiện số lượng trong biểu mẫu" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "Hiển thị số lượng sản phẩm có sẵn trong một số biểu mẫu" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Phím escape để đóng mẫu biểu" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "Sử dụng phím escape để đóng mẫu biểu hộp thoại" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "Cố định điều hướng" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "Vị trí thành điều hướng là cố định trên cùng màn hình" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "Định dạng ngày" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "Định dạng ưa chuộng khi hiển thị ngày" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "Lập lịch sản phẩm" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "Hiển thị thông tin lịch sản phẩm" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "Kiểm kê sản phẩm" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Hiển thị thông tin kiểm kê sản phẩm (nếu chức năng kiểm kê được bật)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "Độ dài chuỗi trong bảng" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "Giới hạn độ dài tối đa cho chuỗi hiển thị trong kiểu xem bảng biểu" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "Nhận báo cáo lỗi" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "Nhận thông báo khi có lỗi hệ thống" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "" @@ -3530,7 +3540,7 @@ msgstr "Số điện thoại liên hệ" msgid "Contact email address" msgstr "Địa chỉ email liên hệ" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "Liên hệ" @@ -3575,7 +3585,7 @@ msgstr "Công ty này có sản xuất sản phẩm?" msgid "Default currency used for this company" msgstr "Tiền tệ mặc định dùng cho công ty này" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "Địa chỉ" @@ -3672,7 +3682,7 @@ msgstr "Liên kết thông tin địa chỉ (bên ngoài)" msgid "Manufacturer Part" msgstr "Sản phẩm nhà sản xuất" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "Sản phẩm cơ bản" @@ -3714,7 +3724,7 @@ msgstr "Tên tham số" msgid "Parameter value" msgstr "Giá trị tham số" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "Đơn vị" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "Sản phẩm nhà sản xuất đã liên kết phải tham chiếu với sản phẩm cơ bản tương tự" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "Mô tả sản phẩm nhà cung cấp" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "Mô tả sản phẩm nhà cung cấp" msgid "Note" msgstr "Ghi chú" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "chi phí cơ sở" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "Thu phí tối thiểu (vd: phí kho bãi)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "Đóng gói" @@ -3802,7 +3812,7 @@ msgstr "Số lượng gói" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Tổng số lượng được cung cấp trong một gói đơn. Để trống cho các hàng hóa riêng lẻ." -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "nhiều" @@ -3978,7 +3988,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "Hợp lệ" @@ -4078,7 +4088,7 @@ msgstr "" msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "Không rõ" @@ -4166,101 +4176,101 @@ msgstr "" msgid "Config type" msgstr "" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "Tham chiếu đơn đặt" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "Tạo bởi" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "Đặt hàng" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "Sản phẩm nội bộ" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "Đã hoàn thành" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "Đơn hàng" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "Đơn hàng" msgid "Sales Order" msgstr "Đơn đặt hàng" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "Đơn hàng trả lại" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "Tổng tiền" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "Tổng tiền cho đơn hàng hàng" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "Tiền tệ đơn đặt hàng" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "Tiền tệ cho đơn đặt này (để trống để sử dụng tiền mặc định)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "Liên hệ không phù hợp với doanh nghiệp đã chọn" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "Mô tả đơn đặt (tùy chọn)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "Mã dự án đã chọn cho đơn đặt hàng này" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "Liên kết đến trang bên ngoài" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "Ngày mục tiêu" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "Ngày mong muốn giao được hàng. Đơn đặt sẽ quá hạn sau ngày này." -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "Ngày phát hành" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "Ngày đặt hàng đã phát hành" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "Người dùng hoặc nhóm có trách nhiệm với đơn đặt này" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "Đầu mối liên hệ của đơn đặt này" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "Địa chỉ công ty cho đơn đặt này" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "Mã đặt hàng" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "Trạng thái đơn đặt mua" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "Doanh nghiệp từ những hàng hóa đang được đặt mua" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "Tham chiếu nhà cung cấp" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "Mã tham chiếu đơn đặt nhà cung cấp" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "nhận bởi" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "Ngày đặt hàng đã được hoàn thiện" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "Đích đến" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "Nhà cung cấp sản phẩm phải trùng với nhà cung cấp PO" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "Số lượng phải là số dương" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Khách hàng" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "Doanh nghiệp từ những hàng hóa đang được bán" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "Tham chiếu khách hàng " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "Mã tham chiếu đơn đặt của khách hàng" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "Ngày giao hàng" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "vận chuyển bằng" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "Những đơn hàng đang mở thì sẽ được đánh dấu là hoàn thành" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Đơn hàng không thể hoàn thành được vì vận chuyển chưa xong" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "Đơn hàng không thể hoàn thành được vì những khoản riêng chưa xong" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "Số lượng mặt hàng" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "Tham chiếu khoản riêng" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "Ghi chú khoản riêng" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Ngày mục tiêu cho khoản riêng này (để trống để sử dụng ngày mục tiêu từ đơn đặt)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "Mô tả khoản riêng (tùy chọn)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "Ngữ cảnh bổ sung" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "Đơn giá" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "Sản phẩm nhà cung cấp phải phù hợp với nhà cung cung cấp" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "Sản phẩm nhà cung cấp" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "Đã nhận" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "Số mục đã nhận" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "Giá mua" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "Giá đơn vị mua" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "Không thể gán sản phẩm ảo vào trong đơn đặt bán hàng" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "Chỉ có thể gán sản phẩm có thể bán vào đơn đặt bán hàng" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "Giá bán" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "Giá bán đơn vị" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "Đã chuyển" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "Số lượng đã vận chuyển" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "Ngày vận chuyển" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "Ngày giao hàng" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "Ngày giao hàng của vận chuyển" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "Kiểm tra bởi" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "Người dùng đã kiểm tra vận chuyển này" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "Vận chuyển" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "Mã vận chuyển" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "Số theo dõi" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "Thông tin theo dõi vận chuyển" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "Mã hóa đơn" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "Số tham chiếu liên kết với hóa đơn" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "Vận đơn đã được gửi đi" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "Vận đơn chưa có hàng hóa được phân bổ" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "Hàng trong kho chưa được giao" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "Không thể phân bổ hàng hóa vào cùng với dòng với sản phẩm khác" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "Không thể phân bổ hàng hóa vào một dòng mà không có sản phẩm nào" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Số lượng phân bổ không thể vượt quá số lượng của kho" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "Số lượng phải là 1 cho hàng hóa sêri" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "Đơn bán hàng không phù hợp với vận đơn" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "Vận đơn không phù hợp với đơn bán hàng" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "Dòng" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "Tham chiếu vận đơn của đơn hàng bán" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "Hàng hóa" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "Chọn hàng trong kho để phân bổ" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "Nhập số lượng phân kho" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "Tham chiếu đơn hàng trả lại" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "Công ty có hàng hóa sẽ được trả lại" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "Trạng thái đơn hàng trả lại" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "Chọn hàng hóa để trả lại từ khách hàng" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "Ngày nhận được" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "Ngày mà hàng hóa trả lại đã được nhận" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "Kết quả" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "Kết quả cho hàng hóa dòng này" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "Chi phí gắn với hàng trả lại hoặc sửa chữa cho dòng hàng hóa này" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "" @@ -4808,7 +4820,7 @@ msgstr "" msgid "SKU" msgstr "" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "Mã sản phẩm nội bộ" @@ -4848,7 +4860,7 @@ msgstr "Chọn vị trí đích cho hàng hóa đã nhận" msgid "Enter batch code for incoming stock items" msgstr "Nhập mã lô cho hàng trong kho đang đến" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "Ngày hết hạn" @@ -5005,905 +5017,914 @@ msgstr "Hoàn tiền" msgid "Reject" msgstr "Từ chối" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "Đơn đặt mua quá hạn" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "Đơn đặt mua {po} quá hạn" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "Đơn bán hàng quá hạn" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "Đơn bán hàng {so} đã quá hạn" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "Đơn đặt mua vào" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "Đơn hàng bán ra" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "Kho sản xuất bởi Đơn đặt bản dựng" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "Kho được yêu cầu cho đơn đặt bản dựng" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "Xác minh toàn bộ hóa đơn vật liệu" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "Tùy chọn này phải được chọn" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "Danh mục sản phẩm" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "Danh mục sản phẩm" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "Điểm bán mặc định" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "Vị trí mặc định cho sản phẩm trong danh mục này" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "Cấu trúc" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Hàng hóa không được gán trực tiếp vào danh mục có cấu trúc nhưng có thể được gán vào danh mục con." -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "Từ khóa mặc định" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "Từ khóa mặc định cho sản phẩm trong danh mục này" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "Biểu tượng" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "Biểu tượng (tùy chọn)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Bạn không thể thay đổi cấu trúc nhóm sản phẩm này vì một số sản phẩm đã được gắn với nó rồi!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "Nguyên liệu" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "Lựa chọn sai cho sản phẩm cha" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Không thể dùng sản phẩm '{self}' trong BOM cho '{parent}' (đệ quy)" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Sản phẩm '{parent}' được dùng trong BOM cho '{self}' (đệ quy)" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN phải phù hợp mẫu biểu thức chính quy {pattern}" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "Hàng trong kho với số sê ri này đã tồn tại" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN trùng lặp không được cho phép trong thiết lập sản phẩm" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "Sản phẩm với Tên, IPN và Duyệt lại đã tồn tại." -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "Sản phẩm không thể được phân vào danh mục sản phẩm có cấu trúc!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "Tên sản phẩm" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "Là Mẫu" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "Sản phẩm này có phải là sản phẩm mẫu?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "Đây có phải là 1 biến thể của sản phẩm khác?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "Biến thể của" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "Mô tả (không bắt buộc)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "Từ khóa" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "Từ khóa sản phẩm để cải thiện sự hiện diện trong kết quả tìm kiếm" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "Danh mục sản phẩm" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "Số phiên bản hoặc bản duyệt lại sản phẩm" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "Phiên bản" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "Hàng hóa này sẽ được cất vào đâu?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "Nhà cung ứng mặc định" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "Nhà cung ứng sản phẩm mặc định" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "Hết hạn mặc định" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "Thời gian hết hạn (theo ngày) để nhập kho hàng hóa cho sản phẩm này" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "Kho tối thiểu" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "Cấp độ kho tối thiểu được phép" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "Đơn vị đo cho sản phẩm này" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "Sản phẩm này có thể được dựng từ sản phẩm khác?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "Sản phẩm này có thể dùng để dựng các sản phẩm khác?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "Sản phẩm này có đang theo dõi cho hàng hóa duy nhất?" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "Sản phẩm này có thể mua được từ nhà cung ứng bên ngoài?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "Sản phẩm này có thể được bán cho khách hàng?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "Sản phẩm này đang hoạt động?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "Đây là sản phẩm ảo, ví dụ như sản phẩm phần mềm hay bản quyền?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "Giá trị tổng kiểm BOM" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "Giá trị tổng kiểm BOM đã được lưu" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "BOM kiểm tra bởi" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "Ngày kiểm tra BOM" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "Tạo người dùng" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "Trách nhiệm chủ sở hữu cho sản phẩm này" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "Kiểm kê cuối cùng" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "Bán nhiều" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "Tiền được dùng để làm đệm tính toán giá bán" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "Chi phí BOM tối thiểu" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "Chi phí thành phần sản phẩm tối thiểu" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "Chi phí BOM tối đa" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "Chi phí thành phần sản phẩm tối đa" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "Chi phí mua vào tối thiểu" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "Chi phí mua vào tối thiểu trong lịch sử" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "Chi phí mua tối đa" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "Chi phí thành phần sản phẩm tối đa trong lịch sử" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "Giá nội bộ tối thiểu" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "Chi phí tối thiểu dựa trên phá vỡ giá nội bộ" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "Giá nội bộ tối đa" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "Chi phí tối đa dựa trên phá vỡ giá nội bộ" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "Giá nhà cung ứng tối thiểu" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "Giá sản phẩm tối thiểu từ nhà cung ứng bên ngoài" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "Giá nhà cung ứng tối đa" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "Giá sản phẩm tối đã từ nhà cung ứng bên ngoài" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "Giá trị biến thể tối thiểu" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "Chi phí tối thiểu của sản phẩm biến thể đã tính" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "Chi phí biến thể tối đa" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "Chi phí tối đa của sản phẩm biến thể đã tính" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "Chi phí tối thiểu" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "Ghi đề chi phí tối thiểu" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "Chi phí tối đa" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "Ghi đề chi phí tối đa" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "Chi phí tối thiểu tính toán tổng thể" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "Chi phí tối đa tính toán tổng thể" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "Giá bán thấp nhất" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "Giá bán tối thiểu dựa trên phá giá" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "Giá bán cao nhất" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "Giá bán cao nhất dựa trên phá giá" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "Chi phí bán hàng tối thiểu" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "Giá bán hàng tối thiểu trong lịch sử" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "Giá bán hàng tối đa" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "Giá bán hàng tối đa trong lịch sử" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "Sản phẩm dành cho kiểm kê" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "Tổng số hàng" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "Số mục kho độc lậo tại thời điểm kiểm kê" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "Tống số kho tại thời điểm kiểm kê" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Ngày" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "Kiểm kê đã thực hiện" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "Ghi chú bổ sung" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "Người dùng đã thực hiện đợt kiểm kê này" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "Chi phí kho tối thiểu" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "Chi phí kho tối thiểu ước tính của kho đang có" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "Chi phí kho tối đa" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "Chi phí kho tối đa ước tính của kho đang có" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "Báo cáo" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "Tệp báo cáo kiểm kê (được sinh nội bộ)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "Bộ đếm sản phẩm" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "Số sản phẩm đã được bao quát bởi kiểm kê" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "Người dùng đã yêu cầu báo cáo kiểm kê này" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "Lựa chọn phải duy nhất" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "Tên kiểm thử" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "Nhập tên cho kiểm thử" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "Mô tả kiểm thử" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "Nhập mô tả cho kiểm thử này" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "Đã bật" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "Bắt buộc" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "Kiểm thử này bắt buộc phải đạt?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "Giá trị bắt buộc" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "Kiểm thử này yêu cầu 1 giá trị khi thêm một kết quả kiểm thử?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "Yêu cầu đính kèm" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "Kiểm thử này yêu cầu tệp đính kèm khi thêm một kết quả kiểm thử?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "Lựa chọn" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "Tham số hộp kiểm tra không thể có đơn vị" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "Tham số hộp kiểm tra không thể có lựa chọn" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "Tên tham số mẫu phải là duy nhất" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "Tên tham số" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "Đơn vị vật lý cho tham số này" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "Mô tả tham số" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "Ô lựa chọn" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "Tham số này có phải là hộp kiểm tra?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "Lựa chọn hợp lệ từ tham số này (ngăn cách bằng dấu phẩy)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "Lựa chọn sai cho giá trị tham số" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "Sản phẩm cha" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "Mẫu tham số" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "Giá trị tham số" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "Giá trị mặc định" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "Giá trị tham số mặc định" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "Chọn sản phẩm cha" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "Sản phẩm phụ" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "Chọn sản phẩm được dùng trong BOM" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "Số lượng BOM cho mục BOM này" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "Mục BOM này là tùy chọn" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Mục BOM này bị tiêu hao (không được theo dõi trong đơn đặt bản dựng)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "Dư thừa" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Số lượng bản dựng lãng phí ước tính (tuyệt đối hoặc phần trăm)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "Tham chiếu mục BOM" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "Ghi chú mục BOM" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "Giá trị tổng kiểm" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "Giá trị tổng kiểm dòng BOM" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "Đã xác minh" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "Mục BOM này là hợp lệ" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "Nhận thừa hưởng" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Mục BOM này được thừa kế bởi BOM cho sản phẩm biến thể" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Hàng trong kho cho sản phẩm biến thể có thể được dùng bởi mục BOM này" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "Số lượng phải là giá trị nguyên dùng cho sản phẩm có thể theo dõi được" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "Sản phẩm phụ phải được chỉ định" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "Sảm phẩm thay thế mục BOM" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "Sản phẩm thay thế không thể giống sản phẩm chủ đạo" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "Hàng hóa BOM cha" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "Sản phẩm thay thế" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "Sản phẩm 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "Sản phẩm 2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "Chọn sản phẩm liên quan" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "Không thể tạo mối quan hệ giữa một sản phẩm và chính nó" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "Đã tồn tại mối quan hệ trùng lặp" @@ -6315,83 +6336,83 @@ msgstr "Chưa chỉ ra hành động cụ thể" msgid "No matching action found" msgstr "Không tìm thấy chức năng phù hợp" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "Không tìm thấy dữ liệu mã vạch phù hợp" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "Đã tìm thấy dữ liệu mã vạch phù hợp" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "Mã vạch phù hợp với hàng hóa hiện có" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "Không tìm thấy thông tin sản phẩm phù hợp" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "Không tìm thấy sản phẩm nhà cung cấp phù hợp" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "Tìm thấy nhiều sản phẩm nhà cung cấp phù hợp" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "Sản phẩm nhà cung cấp phù hợp" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "Hàng hóa này đã được nhận" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "Kho không đủ hạn mức khả dụng" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "Không đủ thông tin" @@ -6834,7 +6855,7 @@ msgstr "Viền" msgid "Print a border around each label" msgstr "In một viền xung quanh từng nhãn" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "Ngang" @@ -7011,17 +7032,17 @@ msgstr "Phương thức" msgid "No author found" msgstr "Không tìm thấy tác giả" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "Phần bổ sung '{p}' không tương thích với phiên bản InvenTree hiện tại {v}" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "Phần bổ sung yêu cầu ít nhất phiên bản {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "Phần bổ sung yêu cầu tối đa phiên bản {v}" @@ -7258,116 +7279,116 @@ msgstr "Pháp lý" msgid "Letter" msgstr "Thư" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "Tên mẫu" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "Mẫu tên tệp" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "Bộ lọc" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "Khổ giấy cho báo cáo PDF" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "Tạo báo cáo theo hướng ngang" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "Chiều rộng [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "Chiều rộng nhãn, tính theo mm" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "Chiều cao [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "Chiều cao nhãn, tính theo mm" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "Mẫu trích" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "Tệp báo cáo mẫu" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "Mô tả tệp báo cáo mẫu" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "Tài sản" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "Tệp báo cáo tài sản" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "Mô tả tệp báo cáo tài sản" @@ -7449,7 +7470,7 @@ msgstr "Tổng cộng" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "Số sê-ri" @@ -7639,313 +7660,313 @@ msgstr "Sản phẩm nhà cung cấp có kích thước đóng gói được đ msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Số sê-ri không thê được cung cấp cho sản phẩm không thể theo dõi" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "Loại vị trí kho hàng" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "Loại vị trí kho hàng" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "Biểu tượng mặc định cho vị trí không được đặt biểu tượng (tùy chọn)" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "Kho hàng" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "Vị trí kho hàng" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "Chủ sở hữu" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "Chọn chủ sở hữu" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Không thể đưa trực tiếp hàng trong kho vào bên trong vị trí kho hàng có cấu trúc, nhưng có thể đặt vào kho con." -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "Bên ngoài" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "Đây là vị trí kho bên ngoài" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "Loại vị trí" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "Loại vị trí kho hàng của địa điểm này" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "Bạn không thể chuyển đổi vị trí kho hàng này thành cấu trúc vì đã có hàng hóa trong kho được đặt vào bên trong nó!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "Không thể đặt hàng trong kho vào trong địa điểm kho có cấu trúc!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "Không thể tạo hàng hóa trong kho cho sản phẩm ảo" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "Loại sản phẩm ('{self.supplier_part.part}') phải là {self.part}" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "Số lượng phải là 1 cho hàng hóa với số sê ri" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Số sê ri không thể đặt được nếu số lượng lớn hơn 1" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "Hàng hóa không thể thuộc về chính nó" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "Hàng hóa phải có 1 tham chiếu bản dựng nếu is_building=True" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "Tham chiếu bản dựng không thể trỏ vào cùng một đối tượng sản phẩm" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "Hàng trong kho cha" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "Sản phẩm cơ bản" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "Chọn sản phẩm nhà cung cấp khớp với hàng hóa trong kho này" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "Hàng trong kho này được đặt ở đâu?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "Đóng gói hàng hóa này được lưu trữ lại" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "Đã cài đặt trong" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "Mục này đã được cài đặt trong mục khác?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "Số sê ri cho mục này" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "Mã lô cho hàng trong kho này" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "Số lượng tồn kho" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "Bản dựng nguồn" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "Bản dựng cho hàng hóa này" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "Tiêu thụ bởi" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "Đơn đặt bản dựng đã dùng hàng hóa này" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "Đơn đặt mua nguồn" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "Đơn đặt mua cho hàng hóa này" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "Đơn hàng bán đích" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Ngày hết hạn của hàng hóa này. Kho sẽ được nhắc tình trạng hết hạn sau ngày này" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "Xóa khi thiếu hụt" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "Xóa hàng trong kho này khi kho hàng bị thiếu hụt" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "Giá mua riêng lẻ tại thời điểm mua" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "Đã chuyển đổi sang sản phẩm" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "Chưa đặt sản phẩm thành có thể theo dõi" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "Số lượng phải là số nguyên" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Số lượng không thể vượt quá số lượng trong kho đang có ({self.quantity})" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "Số lượng không khớp với số sêri" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "Hàng trong kho đã được gán vào đơn hàng bán" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "Hàng trong kho đã được cài đặt vào hàng hóa khác" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "Hàng trong kho chứa hàng hóa khác" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "Hàng trong kho đã được gắn với một khách hàng" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "Hàng trong kho hiện đang sản xuất" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "Không thể hợp nhất kho nối tiếp" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "Mặt hàng trùng lặp" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "Mặt hàng phải tham chiếu đến sản phẩm tương tự" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "Mặt hàng phải tham chiếu đến sản phẩm nhà cung cấp tương tự" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "Mã trạng thái kho phải phù hợp" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "Không thể xóa mặt hàng không ở trong kho" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "Ghi chú đầu vào" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "Phải cung cấp giá trị cho kiểm thử này" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "Phải tải liên đính kèm cho kiểm thử này" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "Kết quả kiểm thử" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "Giá trị đầu ra kiểm thử" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "Đính kèm kết quả kiểm thử" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "Ghi chú kiểm thử" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "" @@ -8401,6 +8422,7 @@ msgstr "Có di trú cơ sở dữ liệu đang chờ xử lý cần bạn lưu #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "Người dùng" msgid "Select which users are assigned to this group" msgstr "Chọn người dùng được chỉ định cho nhóm này" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "Người dùng sau là thành viên của nhiều nhóm" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "Thông tin cá nhân" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "Quyền" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "Ngày quan trọng" diff --git a/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po index becd669891..bdb32a4bfa 100644 --- a/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:41\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "未找到 API 端点" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "提供了无效的单位" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "提供了无效的过滤器" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "用户没有权限查阅当前模型。" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "不能将 {original} 转换到 {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "提供的数量无效" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "无效的数值" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "值' {name}' 未出现在模式格式中" msgid "Provided value does not match required pattern: " msgstr "提供的值与所需模式不匹配:" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "无法一次序列化超过 1000 个项目" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "序號為空白" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "复制序列号" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "无效群组: {group}" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "组范围 {group} 超出了允许的数量 ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "未找到序列号" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "唯一序列号的数量 ({len(serials)}) 必须与数量匹配 ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "从这个值中删除 HTML 标签" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "数据包含禁止的 markdown 内容" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "無效的選項" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "名稱" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "描述" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "描述(選填)" @@ -470,11 +470,11 @@ msgstr "伺服器錯誤" msgid "An error has been logged by the server." msgstr "伺服器紀錄了一個錯誤。" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "必须是有效数字" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "貨幣" @@ -522,28 +522,29 @@ msgstr "損失率不能超過100%" msgid "Invalid value for overage" msgstr "無效的損失值" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "订单状态" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "上層生產工單" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "包含变体" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "包含变体" msgid "Part" msgstr "零件" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "类别" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "可测试部分" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "分配给我" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "发布者" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "负责人" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "排除树" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "工單必須被取消才能被刪除" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "耗材" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "非必須項目" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "装配" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "追蹤中" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "可测试" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "未结算订单" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "已分配" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "可用数量" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "生产订单" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "生产订单" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "装配物料清单尚未验证" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "无法为未激活的零件创建生产订单" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "无法为已解锁的零件创建生产订单" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "無效的上層生產工單選擇" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "必须指定负责的用户或组" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "無法更改生產工單" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "生產工單代號" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "生產工單代號" msgid "Reference" msgstr "參考代號" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "關於生產工單的簡單說明(選填)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "這張生產工單對應的上層生產工單" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "選擇要生產的零件" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "銷售訂單代號" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "這張生產工單對應的銷售訂單" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "來源倉儲地點" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "選擇領取料件的倉儲地點(留白表示可以從任何地點領取)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "目標倉儲地點" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "选择已完成项目库存地点" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "生产数量" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "要生产的项目数量" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "已完成项目" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "已經完成的庫存品數量" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "生產狀態" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "生產狀態代碼" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "批号" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "此产出的批号" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "建立日期" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "目標完成日期" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "生產的預計完成日期。若超過此日期則工單會逾期。" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "完成日期" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "完成者" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "發布者" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "發布此生產工單的使用者" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "負責人" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "負責此生產工單的使用者或群組" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "外部連結" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "外部URL連結" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "製造優先度" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "此生产订单的优先级" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "專案代碼" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "此生產工單隸屬的專案代碼" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "未能卸载任务以完成生产分配" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "生產工單 {build} 已經完成" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "一張生產工單已經完成" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "对于可跟踪的零件,必须提供序列号" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "未指定产出" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "产出已完成" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "产出与生产订单不匹配" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "數量必須大於零" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "数量不能大于输出数量" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "产出 {serial} 未通过所有必要测试" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "生产订单行项目" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "生产对象" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "生产对象" msgid "Quantity" msgstr "數量" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "生產工單所需數量" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "生产项必须指定产出,因为主零件已经被标记为可追踪的" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "分配的數量({q})不能超過可用的庫存數量({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "庫存品項超額分配" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "分配的數量必須大於零" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "有序號的品項數量必須為1" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "選擇的庫存品項和BOM的項目不符" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "庫存品項" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "來源庫存項目" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "要分配的庫存數量" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "安裝到" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "目的庫存品項" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "自動為需要項目分配對應的序號" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "序號已存在或無效" @@ -1107,8 +1109,8 @@ msgstr "废品产出的原因" msgid "Location for completed build outputs" msgstr "已完成删除的库存地点" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "物料清单零件名称" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "供应商零件" @@ -1313,7 +1315,7 @@ msgstr "构建参考" msgid "Part Category Name" msgstr "零件类别名称" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "可追踪" @@ -1321,12 +1323,12 @@ msgstr "可追踪" msgid "Inherited" msgstr "已继承的" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "允许变体" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "物料清单项" @@ -1389,11 +1391,11 @@ msgstr "完成" msgid "Stock required for build order" msgstr "生产订单所需库存" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "逾期的生产订单" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "生产订单 {bo} 现已逾期" @@ -1485,8 +1487,8 @@ msgstr "键字符串必须是唯一的" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "使用者" msgid "Price break quantity" msgstr "批发价数量" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "价格" @@ -1519,7 +1521,7 @@ msgstr "此网络钩子的名称" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "激活" @@ -1598,8 +1600,8 @@ msgstr "标题" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "連結" @@ -1624,7 +1626,7 @@ msgstr "阅读" msgid "Was this news item read?" msgstr "这条新闻被阅读了吗?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "定义" msgid "Unit definition" msgstr "单位定义" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "附件" @@ -1716,7 +1718,7 @@ msgstr "文件大小" msgid "File size in bytes" msgstr "文件大小,以字节为单位" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "为附件指定的模型类型无效" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "等同于商业逻辑中自定义状态的状态逻辑键" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "值" @@ -1814,7 +1816,7 @@ msgstr "逻辑密钥必须在参考状态的逻辑键中" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "已锁定" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "扫描条码" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "数据" @@ -1938,7 +1940,7 @@ msgstr "扫描条形码的日期和时间" msgid "URL endpoint which processed the barcode" msgstr "处理条形码的 URL 终点" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "上下文" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "扫描条形码的响应数据" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "结果" @@ -1963,113 +1965,113 @@ msgstr "结果" msgid "Was the barcode scan successful?" msgstr "条码扫描成功吗?" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "新建{verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "新订单已创建并分配给您" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} 已取消" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "分配给您的订单已取消" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "收到的物品" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "已根据采购订单收到物品" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "已收到退货订单中的物品" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "插件引发的错误" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "正在运行" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "等待完成的任务" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "预定的任务" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "失败的任务" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "任务ID" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "唯一任务ID" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "锁定" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "锁定时间" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "任务名称" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "功能" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "功能名称" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "参数" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "任务参数" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "关键字参数" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "任务关键词参数" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "檔案名稱" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "模型类型" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "用户无权为此模式创建或编辑附件" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "复制类别参数模板" msgid "Copy category parameter templates when creating a part" msgstr "创建零件时复制类别参数模板" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "模板" @@ -2423,7 +2425,7 @@ msgstr "零件默认为模板" msgid "Parts can be assembled from other components by default" msgstr "默认情况下,元件可由其他零件组装而成" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "组件" @@ -2432,7 +2434,7 @@ msgstr "组件" msgid "Parts can be used as sub-components by default" msgstr "默认情况下,零件可用作子部件" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "可购买" @@ -2440,7 +2442,7 @@ msgstr "可购买" msgid "Parts are purchaseable by default" msgstr "默认情况下可购买零件" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "可销售" @@ -2452,7 +2454,7 @@ msgstr "零件默认为可销售" msgid "Parts are trackable by default" msgstr "默认情况下可跟踪零件" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "虚拟的" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "记录生成报告时出现的错误" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "页面大小" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "搜索查询返回整词匹配的结果" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "在表格中显示数量" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "以某些形式显示可用零件数量" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Esc键关闭窗体" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "使用ESC键关闭模态窗体" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "固定导航栏" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "导航栏位置固定在屏幕顶部" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "时间格式" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "显示时间的首选格式" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "零件调度" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "显示零件排程信息" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "零件盘点" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "显示零件盘点信息 (如果启用了盘点功能)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "表字符串长度" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "表视图中显示的字符串的最大长度限制" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "接收错误报告" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "接收系统错误通知" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "上次使用的打印设备" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "为用户保存上次使用的打印设备" @@ -3530,7 +3540,7 @@ msgstr "联系电话" msgid "Contact email address" msgstr "联系人电子邮箱地址" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "联系人" @@ -3575,7 +3585,7 @@ msgstr "这家公司生产零件吗?" msgid "Default currency used for this company" msgstr "此公司使用的默认货币" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "地址" @@ -3672,7 +3682,7 @@ msgstr "链接地址信息 (外部)" msgid "Manufacturer Part" msgstr "制造商零件" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "基础零件" @@ -3714,7 +3724,7 @@ msgstr "参数名称" msgid "Parameter value" msgstr "参数值" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "单位" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "链接的制造商零件必须引用相同的基础零件" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "供应商零件说明" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "供应商零件说明" msgid "Note" msgstr "备注" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "基本费用" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "最低费用(例如库存费)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "打包" @@ -3802,7 +3812,7 @@ msgstr "包装数量" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "单包供应的总数量。为单个项目留空。" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "多个" @@ -3978,7 +3988,7 @@ msgstr "原始行数据" msgid "Errors" msgstr "错误" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "有效" @@ -4078,7 +4088,7 @@ msgstr "每个标签要打印的份数" msgid "Connected" msgstr "已连接" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "未知" @@ -4166,101 +4176,101 @@ msgstr "设备配置" msgid "Config type" msgstr "配置类型" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "订单参考" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "未完成" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "有项目编码" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "创建人" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "有定价" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "订单" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "订单完成" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "内部零件" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "订单待定" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "已完成" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "有配送" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "采购订单" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "采购订单" msgid "Sales Order" msgstr "销售订单" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "退货订单" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "总价格" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "此订单的总价" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "订单货币" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "此订单的货币 (留空以使用公司默认值)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "联系人与所选公司不匹配" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "订单描述 (可选)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "为此订单选择项目编码" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "链接到外部页面" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "预计日期" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "订单交付的预期日期。订单将在此日期后过期。" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "签发日期" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "订单发出日期" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "负责此订单的用户或组" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "此订单的联系人" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "此订单的公司地址" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "订单参考" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "采购订单状态" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "订购物品的公司" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "供应商参考" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "供应商订单参考代码" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "接收人" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "订单完成日期" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "目的地" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "接收物品的目标" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "零件供应商必须与采购订单供应商匹配" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "数量必须是正数" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "客户" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "出售物品的公司" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "销售订单状态" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "客户参考 " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "客户订单参考代码" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "发货日期" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "发货人" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "订单已完成" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "订单已取消" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "只有未结订单才能标记为已完成" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "由于发货不完整,订单无法完成" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "由于缺货,订单无法完成" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "订单无法完成,因为行项目不完整" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "项目数量" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "行项目参考" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "行项目注释" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "此行项目的目标日期 (留空以使用订单中的目标日期)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "行项目描述 (可选)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "此行的附加上下文" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "单位价格" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "采购订单行项目" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "供应商零件必须与供应商匹配" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "供应商零件" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "已接收" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "收到的物品数量" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "采购价格" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "每单位的采购价格" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "采购订单附加行" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "销售订单行项目" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "虚拟零件不能分配给销售订单" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "只有可销售的零件才能分配给销售订单" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "售出价格" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "单位售出价格" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "已配送" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "发货数量" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "销售订单发货" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "发货日期" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "送达日期" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "装运交货日期" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "审核人" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "检查此装运的用户" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "配送" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "配送单号" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "跟踪单号" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "配送跟踪信息" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "发票编号" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "相关发票的参考号" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "货物已发出" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "发货没有分配库存项目" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "销售订单加行" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "销售订单分配" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "库存项目尚未分配" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "无法将库存项目分配给具有不同零件的行" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "无法将库存分配给没有零件的生产线" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "分配数量不能超过库存数量" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "序列化库存项目的数量必须为1" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "销售订单与发货不匹配" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "发货与销售订单不匹配" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "行" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "销售订单发货参考" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "项目" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "选择要分配的库存项目" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "输入库存分配数量" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "退货订单参考" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "退回物品的公司" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "退货订单状态" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "退货订单行项目" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "选择要从客户处退回的商品" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "接收日期" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "收到此退货的日期" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "结果" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "该行项目的结果" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "与此行项目的退货或维修相关的成本" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "退货订单附加行" @@ -4808,7 +4820,7 @@ msgstr "将具有相同零件、目的地和目标日期的项目合并到一个 msgid "SKU" msgstr "库存量单位" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "内部零件编号" @@ -4848,7 +4860,7 @@ msgstr "为收到的物品选择目的地位置" msgid "Enter batch code for incoming stock items" msgstr "输入入库项目的批号" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "有效期至" @@ -5005,905 +5017,914 @@ msgstr "退款" msgid "Reject" msgstr "拒絕" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "逾期采购订单" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "采购订单 {po} 已逾期" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "逾期销售订单" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "销售订单 {so} 已逾期" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "已加星标" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "按星标类别筛选" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "深度" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "按类别深度筛选" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "顶级" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "按顶级类别筛选" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "级联" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "在筛选结果中包含子类别" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "父类" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "按父类别筛选" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "排除指定类别下的子类别" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "有结果" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "收到的采购订单" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "外发销售订单" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "建造生产订单产生的库存" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "生产订单所需的库存" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "验证整个物料清单" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "必须选择此项" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "是修订版本" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "有修订版本" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "物料清单合规" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "装配部份是可测试的" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "组件部份是可测试的" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "使用" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "零件类别" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "零件类别" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "默认位置" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "此类别零件的默认库存地点" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "结构性" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "零件可能无法直接分配到结构类别,但可以分配到子类别。" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "默认关键字" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "此类别零件的默认关键字" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "图标" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "图标(可选)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "您不能使这个零件类别结构化,因为有些零件已经分配给了它!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "零件" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "无法删除这个零件,因为它已被锁定" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "无法删除这个零件,因为它仍然处于活动状态" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "无法删除这个零件,因为它被使用在了装配中" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "无效的上级零件选择" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "零件 \"{self}\" 不能用在 \"{parent}\" 的物料清单 (递归)" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "零件 \"{parent}\" 被使用在了 \"{self}\" 的物料清单 (递归)" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "内部零件号必须匹配正则表达式 {pattern}" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "零件不能是对自身的修订" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "无法对已经是修订版本的零件进行修订" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "必须指定修订代码" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "修订仅对装配零件允许" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "无法对模版零件进行修订" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "上级零件必须指向相同的模版" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "该序列号库存项己存在" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "在零件设置中不允许重复的内部零件号" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "重复的零件修订版本已经存在。" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "有这个名字,内部零件号,和修订版本的零件已经存在" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "零件不能分配到结构性零件类别!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "零件名称" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "是模板" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "这个零件是一个模版零件吗?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "这个零件是另一零件的变体吗?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "变体" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "零件描述(可选)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "关键词" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "提高搜索结果可见性的零件关键字" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "零件类别" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "内部零件号 IPN" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "零件修订版本或版本号" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "版本" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "这零件是另一零件的修订版本吗?" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "修订版本" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "该物品通常存放在哪里?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "默认供应商" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "默认供应商零件" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "默认到期" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "此零件库存项的过期时间 (天)" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "最低库存" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "允许的最小库存量" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "此零件的计量单位" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "这个零件可由其他零件加工而成吗?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "这个零件可用于创建其他零件吗?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "此零件是否有唯一物品的追踪功能" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "这一部件能否记录到测试结果?" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "这个零件可从外部供应商购买吗?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "此零件可以销售给客户吗?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "这个零件是否已激活?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "无法编辑锁定的零件" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "这是一个虚拟零件,例如一个软件产品或许可证吗?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "物料清单校验和" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "保存的物料清单校验和" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "物料清单检查人" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "物料清单检查日期" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "新建用户" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "此零件的负责人" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "最近库存盘点" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "出售多个" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "用于缓存定价计算的货币" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "最低物料清单成本" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "元件的最低成本" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "物料清单的最高成本" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "元件的最高成本" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "最低购买成本" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "最高历史购买成本" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "最大购买成本" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "最高历史购买成本" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "最低内部价格" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "基于内部批发价的最低成本" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "最大内部价格" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "基于内部批发价的最高成本" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "供应商最低价格" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "外部供应商零件的最低价格" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "供应商最高价格" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "来自外部供应商的商零件的最高价格" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "最小变体成本" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "计算出的变体零件的最低成本" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "最大变体成本" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "计算出的变体零件的最大成本" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "最低成本" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "覆盖最低成本" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "最高成本" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "覆盖最大成本" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "计算总最低成本" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "计算总最大成本" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "最低售出价格" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "基于批发价的最低售出价格" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "最高售出价格" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "基于批发价的最大售出价格" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "最低销售成本" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "历史最低售出价格" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "最高销售成本" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "历史最高售出价格" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "用于盘点的零件" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "物品数量" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "盘点时的个别库存条目数" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "盘点时可用库存总额" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "日期" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "进行盘点的日期" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "附加注释" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "进行此盘点的用户" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "最低库存成本" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "现有存库存最低成本估算" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "最高库存成本" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "目前库存最高成本估算" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "报告" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "盘点报告文件(内部生成)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "零件计数" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "盘点涵盖的零件数量" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "请求此盘点报告的用户" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "零件售出价格折扣" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "零件测试模板" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "模板名称无效 - 必须包含至少一个字母或者数字" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "选择必须是唯一的" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "测试模板只能为可拆分的部件创建" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "零件已存在具有相同主键的测试模板" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "测试名" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "输入测试的名称" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "测试主键" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "简化测试主键" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "测试说明" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "输入测试的描述" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "已启用" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "此测试是否已启用?" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "必须的" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "需要此测试才能通过吗?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "需要值" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "添加测试结果时是否需要一个值?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "需要附件" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "添加测试结果时是否需要文件附件?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "选项" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "此测试的有效选择 (逗号分隔)" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "零件参数模板" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "勾选框参数不能有单位" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "复选框参数不能有选项" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "参数模板名称必须是唯一的" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "参数名称" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "此参数的物理单位" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "参数说明" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "勾选框" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "此参数是否为勾选框?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "此参数的有效选择 (逗号分隔)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "零件参数" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "参数不能被修改 - 零件被锁定" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "无效的参数值选择" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "父零件" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "参数模板" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "参数值" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "零件类别参数模板" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "默认值" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "默认参数值" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "物料清单项目不能被修改 - 装配已锁定" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "物料清单项目不能修改 - 变体装配已锁定" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "选择父零件" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "子零件" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "选择要用于物料清单的零件" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "此物料清单项目的数量" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "此物料清单项目是可选的" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "这个物料清单项目是耗材 (它没有在生产订单中被追踪)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "超量" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "估计生产物浪费量(绝对值或百分比)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "物料清单项目引用" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "物料清单项目注释" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "校验和" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "物料清单行校验和" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "已验证" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "此物料清单项目已验证" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "获取继承的" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "此物料清单项目是由物料清单继承的变体零件" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "变体零件的库存项可以用于此物料清单项目" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "可追踪零件的数量必须是整数" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "必须指定子零件" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "物料清单项目替代品" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "替代品零件不能与主零件相同" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "上级物料清单项目" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "替代品零件" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "零件 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "零件2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "选择相关的零件" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "此关系的注释" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "零件关系不能在零件和自身之间创建" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "复制关系已经存在" @@ -6315,83 +6336,83 @@ msgstr "未指定操作" msgid "No matching action found" msgstr "未找到指定操作" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "未找到匹配条形码数据" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "找到匹配条形码数据" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "不支持模型" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "找不到模型实例" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "条形码匹配现有项目" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "没有找到匹配的零件数据" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "没有找到匹配的供应商零件" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "找到多个匹配的供应商零件" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "没有找到匹配条形码数据的插件" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "匹配的供应商零件" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "项目已被接收" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "找到多个匹配的行项目" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "未找到匹配的行项目" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "未提供销售订单" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "条形码与现有的库存项不匹配" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "库存项与行项目不匹配" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "可用库存不足" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "库存项已分配到销售订单" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "没有足够的信息" @@ -6834,7 +6855,7 @@ msgstr "边框" msgid "Print a border around each label" msgstr "打印每个标签的边框" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "横屏模式" @@ -7011,17 +7032,17 @@ msgstr "方法" msgid "No author found" msgstr "未找到作者" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "插件 '{p}' 与当前 InvenTree 版本{v} 不兼容" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "插件所需最低版本 {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "插件所需最高版本 {v}" @@ -7258,116 +7279,116 @@ msgstr "法律" msgid "Letter" msgstr "字母" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "已存在具有此名称的模板" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "模版名称" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "模板说明" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "修订编号 (自动增量)" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "打印时附加到模型" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "打印时将报告输出保存为附件与链接模型实例" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "文件名样式" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "生成文件名模式" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "模板已启用" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "模版的目标模型类型" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "筛选器" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "模版查询筛选器 (逗号分隔的键值对列表)" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "模板包文件" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "PDF 报告的页面大小" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "横向渲染报告" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "宽度 [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "标签宽度,以毫米为单位。" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "高度 [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "标签高度,以毫米为单位。" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "代码片段" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "报告代码片段文件" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "代码片段文件描述" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "资产" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "报告资产文件" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "资产文件描述" @@ -7449,7 +7470,7 @@ msgstr "总计" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "序列号" @@ -7639,313 +7660,313 @@ msgstr "供应商零件有定义的包装大小,但 use_pack_size 标志未设 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "不能为不可跟踪的零件提供序列号" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "库存地点类型" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "库存地点类型" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "为所有没有图标的位置设置默认图标(可选)" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "库存地点" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "库存地点" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "所有者" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "选择所有者" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "库存项可能不直接位于结构库存地点,但可能位于其子地点。" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "外部" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "这是一个外部库存地点" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "位置类型" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "该位置的库存地点类型" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "您不能将此库存地点设置为结构性,因为某些库存项已经位于它!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "必须指定零件" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "库存项不能存放在结构性库存地点!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "无法为虚拟零件创建库存项" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "零件类型 ('{self.supplier_part.part}') 必须为 {self.part}" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "有序列号的项目的数量必须是1" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "如果数量大于1,则不能设置序列号" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "项目不能属于其自身" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "如果is_building=True,则项必须具有构建引用" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "构建引用未指向同一零件对象" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "母库存项目" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "基础零件" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "为此库存项目选择匹配的供应商零件" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "这个库存物品在哪里?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "包装此库存物品存储在" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "安装于" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "此项目是否安装在另一个项目中?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "此项目的序列号" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "此库存项的批号" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "库存数量" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "源代码构建" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "为此库存项目构建" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "消费者" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "构建消耗此库存项的生产订单" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "采购订单来源" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "此库存商品的采购订单" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "目的地销售订单" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "库存物品的到期日。在此日期之后,库存将被视为过期" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "耗尽时删除" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "当库存耗尽时删除此库存项" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "购买时一个单位的价格" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "转换为零件" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "零件未设置为可跟踪" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "数量必须是整数" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "数量不得超过现有库存量 ({self.quantity})" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "必须以列表形式提供序列号" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "数量不匹配序列号" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "测试模板不存在" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "库存项已分配到销售订单" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "库存项已安装在另一个项目中" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "库存项包含其他项目" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "库存项已分配给客户" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "库存项目前正在生产" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "序列化的库存不能合并" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "复制库存项" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "库存项必须指相同零件" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "库存项必须是同一供应商的零件" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "库存状态码必须匹配" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "库存项不能移动,因为它没有库存" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "库存项跟踪" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "条目注释" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "库存项测试结果" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "必须为此测试提供值" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "测试附件必须上传" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "此测试的值无效" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "测试结果" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "测试输出值" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "测验结果附件" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "测试备注" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "测试站" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "进行测试的测试站的标识符" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "已开始" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "测试开始的时间戳" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "已完成" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "测试结束的时间戳" @@ -8401,6 +8422,7 @@ msgstr "有一些待处理的数据库迁移需要注意" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "用户" msgid "Select which users are assigned to this group" msgstr "选择分配给此组的用户" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "以下用户是多个组的成员" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "个人信息" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "权限" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "重要日期" diff --git a/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po index a334343b60..2b83857674 100644 --- a/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-03-31 23:39+0000\n" -"PO-Revision-Date: 2025-03-31 23:41\n" +"POT-Creation-Date: 2025-04-04 23:31+0000\n" +"PO-Revision-Date: 2025-04-04 23:34\n" "Last-Translator: \n" "Language-Team: Chinese Traditional\n" "Language: zh_TW\n" @@ -21,35 +21,35 @@ msgstr "" msgid "You must enable two-factor authentication before doing anything else." msgstr "" -#: InvenTree/api.py:340 +#: InvenTree/api.py:341 msgid "API endpoint not found" msgstr "未找到 API 端點" -#: InvenTree/api.py:416 +#: InvenTree/api.py:417 msgid "List of items or filters must be provided for bulk operation" msgstr "" -#: InvenTree/api.py:423 +#: InvenTree/api.py:424 msgid "Items must be provided as a list" msgstr "" -#: InvenTree/api.py:431 +#: InvenTree/api.py:432 msgid "Invalid items list provided" msgstr "提供了無效的單位" -#: InvenTree/api.py:437 +#: InvenTree/api.py:438 msgid "Filters must be provided as a dict" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:445 msgid "Invalid filters provided" msgstr "提供了無效的過濾器" -#: InvenTree/api.py:449 +#: InvenTree/api.py:450 msgid "No items match the provided criteria" msgstr "" -#: InvenTree/api.py:695 +#: InvenTree/api.py:698 msgid "User does not have permission to view this model" msgstr "用户沒有權限查閲當前模型。" @@ -88,7 +88,7 @@ msgid "Could not convert {original} to {unit}" msgstr "不能將 {original} 轉換到 {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:501 order/models.py:605 order/models.py:871 +#: InvenTree/helpers.py:503 order/models.py:707 order/models.py:975 msgid "Invalid quantity provided" msgstr "提供的數量無效" @@ -105,10 +105,10 @@ msgid "Invalid decimal value" msgstr "" #: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:522 -#: build/serializers.py:597 company/models.py:834 order/models.py:1452 -#: part/models.py:3309 +#: build/serializers.py:597 company/models.py:834 order/models.py:1579 +#: part/models.py:3366 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2629 stock/models.py:2753 stock/serializers.py:747 +#: stock/models.py:2699 stock/models.py:2823 stock/serializers.py:747 #: stock/serializers.py:909 stock/serializers.py:1014 stock/serializers.py:1068 #: stock/serializers.py:1387 stock/serializers.py:1476 #: stock/serializers.py:1654 @@ -124,42 +124,42 @@ msgstr "值' {name}' 未出現在模式格式中" msgid "Provided value does not match required pattern: " msgstr "提供的值與所需模式不匹配:" -#: InvenTree/helpers.py:505 +#: InvenTree/helpers.py:507 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:511 +#: InvenTree/helpers.py:513 msgid "Empty serial number string" msgstr "序號為空白" -#: InvenTree/helpers.py:540 +#: InvenTree/helpers.py:542 msgid "Duplicate serial" msgstr "複製序列號" -#: InvenTree/helpers.py:572 InvenTree/helpers.py:615 InvenTree/helpers.py:633 -#: InvenTree/helpers.py:640 InvenTree/helpers.py:659 +#: InvenTree/helpers.py:574 InvenTree/helpers.py:617 InvenTree/helpers.py:635 +#: InvenTree/helpers.py:642 InvenTree/helpers.py:661 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:603 +#: InvenTree/helpers.py:605 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "組範圍 {group} 超出了允許的數量 ({expected_quantity})" -#: InvenTree/helpers.py:669 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "未找到序列號" -#: InvenTree/helpers.py:674 +#: InvenTree/helpers.py:676 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "唯一序列號的數量 ({len(serials)}) 必須與數量匹配 ({expected_quantity})" -#: InvenTree/helpers.py:793 +#: InvenTree/helpers.py:795 msgid "Remove HTML tags from this value" msgstr "從這個值中刪除 HTML 標籤" -#: InvenTree/helpers.py:872 +#: InvenTree/helpers.py:874 msgid "Data contains prohibited markdown content" msgstr "" @@ -404,24 +404,24 @@ msgid "Invalid choice" msgstr "無效的選項" #: InvenTree/models.py:734 common/models.py:1311 common/models.py:1738 -#: common/models.py:1991 common/models.py:2116 common/serializers.py:485 +#: common/models.py:1991 common/models.py:2116 common/serializers.py:488 #: company/models.py:593 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3780 plugin/models.py:53 -#: report/models.py:145 stock/models.py:83 +#: part/models.py:1039 part/models.py:3837 plugin/models.py:53 +#: report/models.py:198 stock/models.py:84 msgid "Name" msgstr "名稱" -#: InvenTree/models.py:740 build/models.py:218 common/models.py:109 +#: InvenTree/models.py:740 build/models.py:242 common/models.py:109 #: common/models.py:2123 common/models.py:2236 company/models.py:521 -#: company/models.py:825 order/models.py:342 order/models.py:1488 -#: part/models.py:1021 part/models.py:3795 report/models.py:151 -#: report/models.py:650 report/models.py:676 +#: company/models.py:825 order/models.py:429 order/models.py:1615 +#: part/models.py:1062 part/models.py:3852 report/models.py:204 +#: report/models.py:708 report/models.py:734 #: report/templates/report/inventree_build_order_report.html:117 -#: stock/models.py:89 +#: stock/models.py:90 msgid "Description" msgstr "描述" -#: InvenTree/models.py:741 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:91 msgid "Description (optional)" msgstr "描述(選填)" @@ -470,11 +470,11 @@ msgstr "伺服器錯誤" msgid "An error has been logged by the server." msgstr "伺服器紀錄了一個錯誤。" -#: InvenTree/serializers.py:68 part/models.py:4398 +#: InvenTree/serializers.py:68 part/models.py:4455 msgid "Must be a valid number" msgstr "必須是有效的數字" -#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3127 +#: InvenTree/serializers.py:109 company/models.py:187 part/models.py:3184 msgid "Currency" msgstr "貨幣" @@ -522,28 +522,29 @@ msgstr "損失率不能超過100%" msgid "Invalid value for overage" msgstr "無效的損失值" -#: build/api.py:37 order/api.py:101 order/api.py:260 order/serializers.py:126 +#: build/api.py:39 order/api.py:104 order/api.py:263 order/serializers.py:126 msgid "Order Status" msgstr "訂單狀態" -#: build/api.py:63 build/models.py:230 +#: build/api.py:65 build/models.py:254 msgid "Parent Build" msgstr "上層生產工單" -#: build/api.py:67 build/api.py:763 order/api.py:505 order/api.py:722 -#: order/api.py:1095 order/api.py:1322 stock/api.py:521 +#: build/api.py:69 build/api.py:768 order/api.py:512 order/api.py:732 +#: order/api.py:1106 order/api.py:1334 stock/api.py:521 msgid "Include Variants" msgstr "包含變體" -#: build/api.py:83 build/api.py:465 build/api.py:777 build/models.py:236 +#: build/api.py:85 build/api.py:470 build/api.py:782 build/models.py:260 #: build/serializers.py:1254 build/serializers.py:1376 #: build/serializers.py:1427 company/models.py:1044 company/serializers.py:432 -#: order/api.py:288 order/api.py:869 order/api.py:1108 order/models.py:1577 -#: order/models.py:1736 order/models.py:1737 part/api.py:1441 part/api.py:1509 -#: part/api.py:1816 part/models.py:417 part/models.py:3138 part/models.py:3282 -#: part/models.py:3430 part/models.py:3451 part/models.py:3473 -#: part/models.py:3609 part/models.py:3970 part/models.py:4242 -#: part/models.py:4608 part/serializers.py:1225 part/serializers.py:1871 +#: order/api.py:291 order/api.py:295 order/api.py:880 order/api.py:1119 +#: order/api.py:1122 order/models.py:1704 order/models.py:1863 +#: order/models.py:1864 part/api.py:1448 part/api.py:1451 part/api.py:1517 +#: part/api.py:1824 part/models.py:457 part/models.py:3195 part/models.py:3339 +#: part/models.py:3487 part/models.py:3508 part/models.py:3530 +#: part/models.py:3666 part/models.py:4027 part/models.py:4299 +#: part/models.py:4665 part/serializers.py:1225 part/serializers.py:1871 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -562,166 +563,167 @@ msgstr "包含變體" msgid "Part" msgstr "零件" -#: build/api.py:103 part/api.py:1523 part/models.py:1039 part/models.py:3501 -#: part/models.py:4079 part/serializers.py:1235 stock/api.py:817 +#: build/api.py:105 build/api.py:108 part/api.py:1531 part/models.py:1080 +#: part/models.py:3558 part/models.py:4136 part/serializers.py:1235 +#: stock/api.py:817 msgid "Category" msgstr "類別" -#: build/api.py:113 +#: build/api.py:116 build/api.py:120 msgid "Ancestor Build" msgstr "可測試部分" -#: build/api.py:133 order/api.py:119 +#: build/api.py:137 order/api.py:122 msgid "Assigned to me" msgstr "分配給我" -#: build/api.py:148 +#: build/api.py:152 #: report/templates/report/inventree_build_order_report.html:152 msgid "Issued By" msgstr "發佈者" -#: build/api.py:163 +#: build/api.py:167 msgid "Assigned To" msgstr "負責人" -#: build/api.py:198 +#: build/api.py:202 msgid "Created before" msgstr "" -#: build/api.py:202 +#: build/api.py:206 msgid "Created after" msgstr "" -#: build/api.py:206 +#: build/api.py:210 msgid "Has start date" msgstr "" -#: build/api.py:214 +#: build/api.py:218 msgid "Start date before" msgstr "" -#: build/api.py:218 +#: build/api.py:222 msgid "Start date after" msgstr "" -#: build/api.py:222 +#: build/api.py:226 msgid "Has target date" msgstr "" -#: build/api.py:230 +#: build/api.py:234 msgid "Target date before" msgstr "" -#: build/api.py:234 +#: build/api.py:238 msgid "Target date after" msgstr "" -#: build/api.py:238 +#: build/api.py:242 msgid "Completed before" msgstr "" -#: build/api.py:242 +#: build/api.py:246 msgid "Completed after" msgstr "" -#: build/api.py:245 order/api.py:216 +#: build/api.py:249 order/api.py:219 msgid "Min Date" msgstr "" -#: build/api.py:268 order/api.py:235 +#: build/api.py:272 order/api.py:238 msgid "Max Date" msgstr "" -#: build/api.py:293 part/api.py:223 +#: build/api.py:297 build/api.py:300 part/api.py:224 msgid "Exclude Tree" msgstr "排除樹" -#: build/api.py:404 +#: build/api.py:409 msgid "Build must be cancelled before it can be deleted" msgstr "工單必須被取消才能被刪除" -#: build/api.py:448 build/serializers.py:1392 part/models.py:4276 +#: build/api.py:453 build/serializers.py:1392 part/models.py:4333 msgid "Consumable" msgstr "耗材" -#: build/api.py:451 build/serializers.py:1395 part/models.py:4270 +#: build/api.py:456 build/serializers.py:1395 part/models.py:4327 msgid "Optional" msgstr "非必須項目" -#: build/api.py:454 common/setting/system.py:429 part/models.py:1170 +#: build/api.py:459 common/setting/system.py:429 part/models.py:1211 #: part/serializers.py:1618 part/serializers.py:1627 stock/api.py:587 msgid "Assembly" msgstr "裝配" -#: build/api.py:457 +#: build/api.py:462 msgid "Tracked" msgstr "追蹤中" -#: build/api.py:460 build/serializers.py:1398 part/models.py:1188 +#: build/api.py:465 build/serializers.py:1398 part/models.py:1229 msgid "Testable" msgstr "可測試" -#: build/api.py:470 order/api.py:914 +#: build/api.py:475 order/api.py:925 msgid "Order Outstanding" msgstr "" -#: build/api.py:480 order/api.py:873 +#: build/api.py:485 order/api.py:884 msgid "Allocated" msgstr "已分配" -#: build/api.py:490 company/models.py:889 company/serializers.py:427 +#: build/api.py:495 company/models.py:889 company/serializers.py:427 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/email/part_event_notification.html:18 msgid "Available" msgstr "可用數量" -#: build/api.py:800 build/models.py:92 +#: build/api.py:805 build/models.py:116 #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:87 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 msgid "Build Order" msgstr "生產工單" -#: build/models.py:93 users/models.py:225 +#: build/models.py:117 users/models.py:225 msgid "Build Orders" msgstr "生產工單" -#: build/models.py:138 +#: build/models.py:162 msgid "Assembly BOM has not been validated" msgstr "裝配物料清單尚未驗證" -#: build/models.py:145 +#: build/models.py:169 msgid "Build order cannot be created for an inactive part" msgstr "無法為未激活的零件創建生產訂單" -#: build/models.py:152 +#: build/models.py:176 msgid "Build order cannot be created for an unlocked part" msgstr "無法為已解鎖的零件創建生產訂單" -#: build/models.py:164 +#: build/models.py:188 msgid "Invalid choice for parent build" msgstr "無效的上層生產工單選擇" -#: build/models.py:173 order/models.py:276 +#: build/models.py:197 order/models.py:363 msgid "Responsible user or group must be specified" msgstr "必須指定負責的用户或組" -#: build/models.py:178 +#: build/models.py:202 msgid "Build order part cannot be changed" msgstr "無法更改生產工單" -#: build/models.py:183 order/models.py:289 +#: build/models.py:207 order/models.py:376 msgid "Target date must be after start date" msgstr "" -#: build/models.py:211 +#: build/models.py:235 msgid "Build Order Reference" msgstr "生產工單代號" -#: build/models.py:212 build/serializers.py:1389 order/models.py:499 -#: order/models.py:1020 order/models.py:1445 order/models.py:2241 -#: part/models.py:4291 +#: build/models.py:236 build/serializers.py:1389 order/models.py:601 +#: order/models.py:1140 order/models.py:1572 order/models.py:2403 +#: part/models.py:4348 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -729,205 +731,205 @@ msgstr "生產工單代號" msgid "Reference" msgstr "參考代號" -#: build/models.py:221 +#: build/models.py:245 msgid "Brief description of the build (optional)" msgstr "關於生產工單的簡單説明(選填)" -#: build/models.py:231 +#: build/models.py:255 msgid "BuildOrder to which this build is allocated" msgstr "這張生產工單對應的上層生產工單" -#: build/models.py:240 +#: build/models.py:264 msgid "Select part to build" msgstr "選擇要生產的零件" -#: build/models.py:245 +#: build/models.py:269 msgid "Sales Order Reference" msgstr "銷售訂單代號" -#: build/models.py:250 +#: build/models.py:274 msgid "SalesOrder to which this build is allocated" msgstr "這張生產工單對應的銷售訂單" -#: build/models.py:255 build/serializers.py:1104 +#: build/models.py:279 build/serializers.py:1104 msgid "Source Location" msgstr "來源倉儲地點" -#: build/models.py:261 +#: build/models.py:285 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "選擇領取料件的倉儲地點(留白表示可以從任何地點領取)" -#: build/models.py:267 +#: build/models.py:291 msgid "Destination Location" msgstr "目標倉儲地點" -#: build/models.py:272 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "選擇已完成項目庫存地點" -#: build/models.py:276 +#: build/models.py:300 msgid "Build Quantity" msgstr "生產數量" -#: build/models.py:279 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "要生產的項目數量" -#: build/models.py:283 +#: build/models.py:307 msgid "Completed items" msgstr "已完成項目" -#: build/models.py:285 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "已經完成的庫存品數量" -#: build/models.py:289 +#: build/models.py:313 msgid "Build Status" msgstr "生產狀態" -#: build/models.py:294 +#: build/models.py:318 msgid "Build status code" msgstr "生產狀態代碼" -#: build/models.py:303 build/serializers.py:372 order/serializers.py:775 -#: stock/models.py:945 stock/serializers.py:79 stock/serializers.py:1619 +#: build/models.py:327 build/serializers.py:372 order/serializers.py:775 +#: stock/models.py:1014 stock/serializers.py:79 stock/serializers.py:1619 msgid "Batch Code" msgstr "批號" -#: build/models.py:307 build/serializers.py:373 +#: build/models.py:331 build/serializers.py:373 msgid "Batch code for this build output" msgstr "此產出的批號" -#: build/models.py:311 order/models.py:379 order/serializers.py:164 -#: part/models.py:1245 +#: build/models.py:335 order/models.py:466 order/serializers.py:164 +#: part/models.py:1286 msgid "Creation Date" msgstr "建立日期" -#: build/models.py:317 +#: build/models.py:341 msgid "Build start date" msgstr "" -#: build/models.py:318 +#: build/models.py:342 msgid "Scheduled start date for this build order" msgstr "" -#: build/models.py:324 +#: build/models.py:348 msgid "Target completion date" msgstr "目標完成日期" -#: build/models.py:326 +#: build/models.py:350 msgid "Target date for build completion. Build will be overdue after this date." msgstr "生產的預計完成日期。若超過此日期則工單會逾期。" -#: build/models.py:331 order/models.py:552 order/models.py:2280 +#: build/models.py:355 order/models.py:654 order/models.py:2442 msgid "Completion Date" msgstr "完成日期" -#: build/models.py:339 +#: build/models.py:363 msgid "completed by" msgstr "完成者" -#: build/models.py:348 +#: build/models.py:372 msgid "Issued by" msgstr "發布者" -#: build/models.py:349 +#: build/models.py:373 msgid "User who issued this build order" msgstr "發布此生產工單的使用者" -#: build/models.py:358 common/models.py:118 order/api.py:169 -#: order/models.py:404 part/models.py:1262 +#: build/models.py:382 common/models.py:118 order/api.py:172 +#: order/models.py:491 part/models.py:1303 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "負責人" -#: build/models.py:359 +#: build/models.py:383 msgid "User or group responsible for this build order" msgstr "負責此生產工單的使用者或羣組" -#: build/models.py:364 stock/models.py:938 +#: build/models.py:388 stock/models.py:1007 msgid "External Link" msgstr "外部連結" -#: build/models.py:366 common/models.py:1879 part/models.py:1073 -#: stock/models.py:940 +#: build/models.py:390 common/models.py:1879 part/models.py:1114 +#: stock/models.py:1009 msgid "Link to external URL" msgstr "外部URL連結" -#: build/models.py:371 +#: build/models.py:395 msgid "Build Priority" msgstr "製造優先度" -#: build/models.py:374 +#: build/models.py:398 msgid "Priority of this build order" msgstr "此生產工單的優先程度" -#: build/models.py:382 common/models.py:88 common/models.py:102 -#: order/api.py:155 order/models.py:351 +#: build/models.py:406 common/models.py:88 common/models.py:102 +#: order/api.py:158 order/models.py:438 msgid "Project Code" msgstr "專案代碼" -#: build/models.py:383 +#: build/models.py:407 msgid "Project code for this build order" msgstr "此生產工單隸屬的專案代碼" -#: build/models.py:651 build/models.py:771 +#: build/models.py:680 build/models.py:803 msgid "Failed to offload task to complete build allocations" msgstr "未能卸載任務以完成生產分配" -#: build/models.py:671 +#: build/models.py:703 #, python-brace-format msgid "Build order {build} has been completed" msgstr "生產工單 {build} 已經完成" -#: build/models.py:677 +#: build/models.py:709 msgid "A build order has been completed" msgstr "一張生產工單已經完成" -#: build/models.py:848 build/serializers.py:420 +#: build/models.py:881 build/serializers.py:420 msgid "Serial numbers must be provided for trackable parts" msgstr "對於可跟蹤的零件,必須提供序列號" -#: build/models.py:958 build/models.py:1043 +#: build/models.py:991 build/models.py:1076 msgid "No build output specified" msgstr "未指定產出" -#: build/models.py:961 +#: build/models.py:994 msgid "Build output is already completed" msgstr "產出已完成" -#: build/models.py:964 +#: build/models.py:997 msgid "Build output does not match Build Order" msgstr "產出與生產訂單不匹配" -#: build/models.py:1046 build/serializers.py:299 build/serializers.py:348 -#: build/serializers.py:972 order/models.py:602 order/serializers.py:599 -#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:785 -#: stock/models.py:1651 stock/serializers.py:718 +#: build/models.py:1079 build/serializers.py:299 build/serializers.py:348 +#: build/serializers.py:972 order/models.py:704 order/serializers.py:599 +#: order/serializers.py:770 part/serializers.py:1612 stock/models.py:854 +#: stock/models.py:1721 stock/serializers.py:718 msgid "Quantity must be greater than zero" msgstr "數量必須大於零" -#: build/models.py:1050 build/serializers.py:303 +#: build/models.py:1083 build/serializers.py:303 msgid "Quantity cannot be greater than the output quantity" msgstr "數量不能大於輸出數量" -#: build/models.py:1115 build/serializers.py:615 +#: build/models.py:1148 build/serializers.py:615 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "產出 {serial} 未通過所有必要測試" -#: build/models.py:1476 +#: build/models.py:1534 msgid "Build Order Line Item" msgstr "生產訂單行項目" -#: build/models.py:1500 +#: build/models.py:1558 msgid "Build object" msgstr "生產對象" -#: build/models.py:1512 build/models.py:1771 build/serializers.py:287 +#: build/models.py:1570 build/models.py:1829 build/serializers.py:287 #: build/serializers.py:333 build/serializers.py:1410 common/models.py:1241 -#: order/models.py:1428 order/models.py:2141 order/serializers.py:1662 -#: order/serializers.py:2128 part/models.py:3296 part/models.py:4264 +#: order/models.py:1555 order/models.py:2288 order/serializers.py:1662 +#: order/serializers.py:2128 part/models.py:3353 part/models.py:4321 #: part/serializers.py:270 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 @@ -943,56 +945,56 @@ msgstr "生產對象" msgid "Quantity" msgstr "數量" -#: build/models.py:1513 +#: build/models.py:1571 msgid "Required quantity for build order" msgstr "生產工單所需數量" -#: build/models.py:1597 +#: build/models.py:1655 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "生產項必須指定產出,因為主零件已經被標記為可追蹤的" -#: build/models.py:1608 +#: build/models.py:1666 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "分配的數量({q})不能超過可用的庫存數量({a})" -#: build/models.py:1629 order/models.py:2090 +#: build/models.py:1687 order/models.py:2237 msgid "Stock item is over-allocated" msgstr "庫存品項超額分配" -#: build/models.py:1634 order/models.py:2093 +#: build/models.py:1692 order/models.py:2240 msgid "Allocation quantity must be greater than zero" msgstr "分配的數量必須大於零" -#: build/models.py:1640 +#: build/models.py:1698 msgid "Quantity must be 1 for serialized stock" msgstr "有序號的品項數量必須為1" -#: build/models.py:1700 +#: build/models.py:1758 msgid "Selected stock item does not match BOM line" msgstr "選擇的庫存品項和BOM的項目不符" -#: build/models.py:1761 build/serializers.py:955 build/serializers.py:1263 +#: build/models.py:1819 build/serializers.py:955 build/serializers.py:1263 #: order/serializers.py:1499 order/serializers.py:1520 #: report/templates/report/inventree_sales_order_shipment_report.html:29 -#: stock/models.py:384 stock/serializers.py:96 stock/serializers.py:816 +#: stock/models.py:453 stock/serializers.py:96 stock/serializers.py:816 #: stock/serializers.py:1325 stock/serializers.py:1437 msgid "Stock Item" msgstr "庫存品項" -#: build/models.py:1762 +#: build/models.py:1820 msgid "Source stock item" msgstr "來源庫存項目" -#: build/models.py:1772 +#: build/models.py:1830 msgid "Stock quantity to allocate to build" msgstr "要分配的庫存數量" -#: build/models.py:1781 +#: build/models.py:1839 msgid "Install into" msgstr "安裝到" -#: build/models.py:1782 +#: build/models.py:1840 msgid "Destination stock item" msgstr "目的庫存品項" @@ -1079,7 +1081,7 @@ msgid "Automatically allocate required items with matching serial numbers" msgstr "自動為需要項目分配對應的序號" #: build/serializers.py:436 order/serializers.py:888 stock/api.py:1076 -#: stock/models.py:1674 +#: stock/models.py:1744 msgid "The following serial numbers already exist or are invalid" msgstr "序號已存在或無效" @@ -1107,8 +1109,8 @@ msgstr "廢品產出的原因" msgid "Location for completed build outputs" msgstr "已完成刪除的庫存地點" -#: build/serializers.py:587 order/models.py:509 order/models.py:1045 -#: order/models.py:2266 order/serializers.py:801 order/serializers.py:1987 +#: build/serializers.py:587 order/models.py:611 order/models.py:1165 +#: order/models.py:2428 order/serializers.py:801 order/serializers.py:1987 #: stock/serializers.py:603 stock/serializers.py:1007 stock/serializers.py:1064 #: stock/serializers.py:1626 users/models.py:1002 msgid "Status" @@ -1295,9 +1297,9 @@ msgstr "物料清單零件名稱" msgid "Build" msgstr "" -#: build/serializers.py:1286 company/models.py:662 order/api.py:300 -#: order/api.py:501 order/serializers.py:591 stock/models.py:881 -#: stock/serializers.py:622 +#: build/serializers.py:1286 company/models.py:662 order/api.py:304 +#: order/api.py:309 order/api.py:508 order/serializers.py:591 +#: stock/models.py:950 stock/serializers.py:622 msgid "Supplier Part" msgstr "供應商零件" @@ -1313,7 +1315,7 @@ msgstr "構建參考" msgid "Part Category Name" msgstr "零件類別名稱" -#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1182 +#: build/serializers.py:1401 common/setting/system.py:453 part/models.py:1223 msgid "Trackable" msgstr "可追蹤" @@ -1321,12 +1323,12 @@ msgstr "可追蹤" msgid "Inherited" msgstr "已繼承的" -#: build/serializers.py:1407 part/models.py:4324 +#: build/serializers.py:1407 part/models.py:4381 msgid "Allow Variants" msgstr "允許變體" -#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4122 -#: part/models.py:4600 stock/api.py:830 +#: build/serializers.py:1412 build/serializers.py:1416 part/models.py:4179 +#: part/models.py:4657 stock/api.py:830 msgid "BOM Item" msgstr "物料清單項" @@ -1389,11 +1391,11 @@ msgstr "完成" msgid "Stock required for build order" msgstr "生產訂單所需庫存" -#: build/tasks.py:265 +#: build/tasks.py:267 msgid "Overdue Build Order" msgstr "逾期的生產訂單" -#: build/tasks.py:270 +#: build/tasks.py:272 #, python-brace-format msgid "Build order {bo} is now overdue" msgstr "生產訂單 {bo} 現已逾期" @@ -1485,8 +1487,8 @@ msgstr "鍵字符串必須是唯一的" #: common/models.py:1219 common/models.py:1220 common/models.py:1324 #: common/models.py:1325 common/models.py:1570 common/models.py:1571 #: common/models.py:1895 common/models.py:1896 common/models.py:2277 -#: importer/models.py:89 part/models.py:3319 part/models.py:3406 -#: part/models.py:3480 part/models.py:3508 plugin/models.py:322 +#: importer/models.py:89 part/models.py:3376 part/models.py:3463 +#: part/models.py:3537 part/models.py:3565 plugin/models.py:322 #: plugin/models.py:323 report/templates/report/inventree_test_report.html:105 #: users/models.py:129 users/models.py:961 msgid "User" @@ -1496,8 +1498,8 @@ msgstr "使用者" msgid "Price break quantity" msgstr "批發價數量" -#: common/models.py:1249 company/serializers.py:567 order/models.py:1505 -#: order/models.py:2561 +#: common/models.py:1249 company/serializers.py:567 order/models.py:1632 +#: order/models.py:2734 msgid "Price" msgstr "價格" @@ -1519,7 +1521,7 @@ msgstr "此網絡鈎子的名稱" #: common/models.py:1316 common/models.py:2136 common/models.py:2243 #: company/models.py:164 company/models.py:799 machine/models.py:39 -#: part/models.py:1205 plugin/models.py:68 stock/api.py:590 users/models.py:200 +#: part/models.py:1246 plugin/models.py:68 stock/api.py:590 users/models.py:200 #: users/models.py:1014 users/serializers.py:270 msgid "Active" msgstr "激活" @@ -1598,8 +1600,8 @@ msgstr "標題" #: common/models.py:1623 common/models.py:1878 company/models.py:149 #: company/models.py:445 company/models.py:512 company/models.py:816 -#: order/models.py:357 order/models.py:1458 order/models.py:1909 -#: part/models.py:1072 +#: order/models.py:444 order/models.py:1585 order/models.py:2056 +#: part/models.py:1113 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "連結" @@ -1624,7 +1626,7 @@ msgstr "閲讀" msgid "Was this news item read?" msgstr "這條新聞被閲讀了嗎?" -#: common/models.py:1649 company/models.py:160 part/models.py:1083 +#: common/models.py:1649 company/models.py:160 part/models.py:1124 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -1675,7 +1677,7 @@ msgstr "定義" msgid "Unit definition" msgstr "單位定義" -#: common/models.py:1812 common/models.py:1869 stock/models.py:2748 +#: common/models.py:1812 common/models.py:1869 stock/models.py:2818 #: stock/serializers.py:249 msgid "Attachment" msgstr "附件" @@ -1716,7 +1718,7 @@ msgstr "文件大小" msgid "File size in bytes" msgstr "文件大小,以字節為單位" -#: common/models.py:1946 common/serializers.py:634 +#: common/models.py:1946 common/serializers.py:637 msgid "Invalid model type specified for attachment" msgstr "為附件指定的模型類型無效" @@ -1745,7 +1747,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "等同於商業邏輯中自定義狀態的狀態邏輯鍵" #: common/models.py:1985 common/models.py:2224 company/models.py:600 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2740 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2810 msgid "Value" msgstr "值" @@ -1814,7 +1816,7 @@ msgstr "邏輯密鑰必須在參考狀態的邏輯鍵中" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2111 common/models.py:2218 part/models.py:3819 +#: common/models.py:2111 common/models.py:2218 part/models.py:3876 msgid "Selection List" msgstr "" @@ -1830,7 +1832,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2130 part/models.py:1210 +#: common/models.py:2130 part/models.py:1251 msgid "Locked" msgstr "已鎖定" @@ -1914,7 +1916,7 @@ msgstr "" msgid "Barcode Scan" msgstr "掃描條碼" -#: common/models.py:2266 importer/models.py:515 part/models.py:3984 +#: common/models.py:2266 importer/models.py:515 part/models.py:4041 msgid "Data" msgstr "數據" @@ -1938,7 +1940,7 @@ msgstr "掃描條碼的日期和時間" msgid "URL endpoint which processed the barcode" msgstr "處理條碼的 URL 終點" -#: common/models.py:2297 order/models.py:1495 plugin/serializers.py:91 +#: common/models.py:2297 order/models.py:1622 plugin/serializers.py:91 msgid "Context" msgstr "上下文" @@ -1955,7 +1957,7 @@ msgid "Response data from the barcode scan" msgstr "掃描條碼的響應數據" #: common/models.py:2312 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Result" msgstr "結果" @@ -1963,113 +1965,113 @@ msgstr "結果" msgid "Was the barcode scan successful?" msgstr "條碼掃描成功嗎?" -#: common/notifications.py:330 +#: common/notifications.py:331 #, python-brace-format msgid "New {verbose_name}" msgstr "新建{verbose_name}" -#: common/notifications.py:332 +#: common/notifications.py:333 msgid "A new order has been created and assigned to you" msgstr "新訂單已創建並分配給您" -#: common/notifications.py:338 +#: common/notifications.py:339 #, python-brace-format msgid "{verbose_name} canceled" msgstr "{verbose_name} 已取消" -#: common/notifications.py:340 +#: common/notifications.py:341 msgid "A order that is assigned to you was canceled" msgstr "分配給您的訂單已取消" -#: common/notifications.py:346 common/notifications.py:353 order/api.py:549 +#: common/notifications.py:347 common/notifications.py:354 order/api.py:559 msgid "Items Received" msgstr "收到的物品" -#: common/notifications.py:348 +#: common/notifications.py:349 msgid "Items have been received against a purchase order" msgstr "已根據採購訂單收到物品" -#: common/notifications.py:355 +#: common/notifications.py:356 msgid "Items have been received against a return order" msgstr "已收到退貨訂單中的物品" -#: common/notifications.py:480 +#: common/notifications.py:504 msgid "Error raised by plugin" msgstr "插件引發的錯誤" -#: common/serializers.py:448 +#: common/serializers.py:451 msgid "Is Running" msgstr "正在運行" -#: common/serializers.py:454 +#: common/serializers.py:457 msgid "Pending Tasks" msgstr "等待完成的任務" -#: common/serializers.py:460 +#: common/serializers.py:463 msgid "Scheduled Tasks" msgstr "預定的任務" -#: common/serializers.py:466 +#: common/serializers.py:469 msgid "Failed Tasks" msgstr "失敗的任務" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Task ID" msgstr "任務ID" -#: common/serializers.py:481 +#: common/serializers.py:484 msgid "Unique task ID" msgstr "唯一任務ID" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock" msgstr "鎖定" -#: common/serializers.py:483 +#: common/serializers.py:486 msgid "Lock time" msgstr "鎖定時間" -#: common/serializers.py:485 +#: common/serializers.py:488 msgid "Task name" msgstr "任務名稱" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function" msgstr "功能" -#: common/serializers.py:487 +#: common/serializers.py:490 msgid "Function name" msgstr "功能名稱" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Arguments" msgstr "參數" -#: common/serializers.py:489 +#: common/serializers.py:492 msgid "Task arguments" msgstr "任務參數" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Keyword Arguments" msgstr "關鍵字參數" -#: common/serializers.py:492 +#: common/serializers.py:495 msgid "Task keyword arguments" msgstr "任務關鍵詞參數" -#: common/serializers.py:602 +#: common/serializers.py:605 msgid "Filename" msgstr "檔案名稱" -#: common/serializers.py:609 report/api.py:45 report/serializers.py:53 +#: common/serializers.py:612 report/api.py:45 report/serializers.py:53 msgid "Model Type" msgstr "模型類型" -#: common/serializers.py:637 +#: common/serializers.py:640 msgid "User does not have permission to create or edit attachments for this model" msgstr "用户無權為此模式創建或編輯附件" -#: common/serializers.py:681 common/serializers.py:784 +#: common/serializers.py:684 common/serializers.py:787 msgid "Selection list is locked" msgstr "" @@ -2409,8 +2411,8 @@ msgstr "複製類別參數模板" msgid "Copy category parameter templates when creating a part" msgstr "創建零件時複製類別參數模板" -#: common/setting/system.py:423 part/models.py:3978 report/models.py:298 -#: report/models.py:502 report/serializers.py:90 report/serializers.py:131 +#: common/setting/system.py:423 part/models.py:4035 report/models.py:351 +#: report/models.py:557 report/serializers.py:90 report/serializers.py:131 #: stock/serializers.py:238 msgid "Template" msgstr "模板" @@ -2423,7 +2425,7 @@ msgstr "零件默認為模板" msgid "Parts can be assembled from other components by default" msgstr "默認情況下,元件可由其他零件組裝而成" -#: common/setting/system.py:435 part/models.py:1176 part/serializers.py:1632 +#: common/setting/system.py:435 part/models.py:1217 part/serializers.py:1632 #: part/serializers.py:1638 msgid "Component" msgstr "組件" @@ -2432,7 +2434,7 @@ msgstr "組件" msgid "Parts can be used as sub-components by default" msgstr "默認情況下,零件可用作子部件" -#: common/setting/system.py:441 part/models.py:1194 +#: common/setting/system.py:441 part/models.py:1235 msgid "Purchaseable" msgstr "可購買" @@ -2440,7 +2442,7 @@ msgstr "可購買" msgid "Parts are purchaseable by default" msgstr "默認情況下可購買零件" -#: common/setting/system.py:447 part/models.py:1200 stock/api.py:591 +#: common/setting/system.py:447 part/models.py:1241 stock/api.py:591 msgid "Salable" msgstr "可銷售" @@ -2452,7 +2454,7 @@ msgstr "零件默認為可銷售" msgid "Parts are trackable by default" msgstr "默認情況下可跟蹤零件" -#: common/setting/system.py:459 part/models.py:1216 +#: common/setting/system.py:459 part/models.py:1257 msgid "Virtual" msgstr "虛擬的" @@ -2645,7 +2647,7 @@ msgid "Log errors which occur when generating reports" msgstr "記錄生成報告時出現的錯誤" #: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:29 -#: report/models.py:306 +#: report/models.py:359 msgid "Page Size" msgstr "頁面大小" @@ -3344,90 +3346,98 @@ msgid "Search queries return results for whole word matches" msgstr "搜索查詢返回整詞匹配的結果" #: common/setting/user.py:169 +msgid "Search Notes" +msgstr "" + +#: common/setting/user.py:171 +msgid "Search queries return results for matches from the item's notes" +msgstr "" + +#: common/setting/user.py:177 msgid "Show Quantity in Forms" msgstr "在表格中顯示數量" -#: common/setting/user.py:170 +#: common/setting/user.py:178 msgid "Display available part quantity in some forms" msgstr "以某些形式顯示可用零件數量" -#: common/setting/user.py:175 +#: common/setting/user.py:183 msgid "Escape Key Closes Forms" msgstr "Esc鍵關閉窗體" -#: common/setting/user.py:176 +#: common/setting/user.py:184 msgid "Use the escape key to close modal forms" msgstr "使用ESC鍵關閉模態窗體" -#: common/setting/user.py:181 +#: common/setting/user.py:189 msgid "Fixed Navbar" msgstr "固定導航欄" -#: common/setting/user.py:182 +#: common/setting/user.py:190 msgid "The navbar position is fixed to the top of the screen" msgstr "導航欄位置固定在屏幕頂部" -#: common/setting/user.py:187 +#: common/setting/user.py:195 msgid "Navigation Icons" msgstr "" -#: common/setting/user.py:188 +#: common/setting/user.py:196 msgid "Display icons in the navigation bar" msgstr "" -#: common/setting/user.py:193 +#: common/setting/user.py:201 msgid "Date Format" msgstr "時間格式" -#: common/setting/user.py:194 +#: common/setting/user.py:202 msgid "Preferred format for displaying dates" msgstr "顯示時間的首選格式" -#: common/setting/user.py:207 +#: common/setting/user.py:215 msgid "Part Scheduling" msgstr "零件調度" -#: common/setting/user.py:208 +#: common/setting/user.py:216 msgid "Display part scheduling information" msgstr "顯示零件排程信息" -#: common/setting/user.py:213 +#: common/setting/user.py:221 msgid "Part Stocktake" msgstr "零件盤點" -#: common/setting/user.py:215 +#: common/setting/user.py:223 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "顯示零件盤點信息 (如果啓用了盤點功能)" -#: common/setting/user.py:221 +#: common/setting/user.py:229 msgid "Table String Length" msgstr "表字符串長度" -#: common/setting/user.py:222 +#: common/setting/user.py:230 msgid "Maximum length limit for strings displayed in table views" msgstr "表視圖中顯示的字符串的最大長度限制" -#: common/setting/user.py:227 +#: common/setting/user.py:235 msgid "Show Last Breadcrumb" msgstr "" -#: common/setting/user.py:228 +#: common/setting/user.py:236 msgid "Show the current page in breadcrumbs" msgstr "" -#: common/setting/user.py:233 +#: common/setting/user.py:241 msgid "Receive error reports" msgstr "接收錯誤報告" -#: common/setting/user.py:234 +#: common/setting/user.py:242 msgid "Receive notifications for system errors" msgstr "接收系統錯誤通知" -#: common/setting/user.py:239 +#: common/setting/user.py:247 msgid "Last used printing machines" msgstr "上次使用的打印設備" -#: common/setting/user.py:240 +#: common/setting/user.py:248 msgid "Save the last used printing machines for a user" msgstr "為用户保存上次使用的打印設備" @@ -3530,7 +3540,7 @@ msgstr "聯繫電話" msgid "Contact email address" msgstr "聯繫人電子郵箱地址" -#: company/models.py:142 company/models.py:274 order/models.py:413 +#: company/models.py:142 company/models.py:274 order/models.py:500 #: users/models.py:1021 msgid "Contact" msgstr "聯繫人" @@ -3575,7 +3585,7 @@ msgstr "這家公司生產零件嗎?" msgid "Default currency used for this company" msgstr "此公司使用的默認貨幣" -#: company/models.py:313 order/models.py:423 +#: company/models.py:313 order/models.py:510 msgid "Address" msgstr "地址" @@ -3672,7 +3682,7 @@ msgstr "鏈接地址信息 (外部)" msgid "Manufacturer Part" msgstr "製造商零件" -#: company/models.py:487 company/models.py:777 stock/models.py:870 +#: company/models.py:487 company/models.py:777 stock/models.py:939 #: stock/serializers.py:471 msgid "Base Part" msgstr "基礎零件" @@ -3714,7 +3724,7 @@ msgstr "參數名稱" msgid "Parameter value" msgstr "參數值" -#: company/models.py:608 part/models.py:1163 part/models.py:3787 +#: company/models.py:608 part/models.py:1204 part/models.py:3844 msgid "Units" msgstr "單位" @@ -3735,7 +3745,7 @@ msgid "Linked manufacturer part must reference the same base part" msgstr "鏈接的製造商零件必須引用相同的基礎零件" #: company/models.py:787 company/serializers.py:436 company/serializers.py:454 -#: order/models.py:524 part/serializers.py:553 +#: order/models.py:626 part/serializers.py:553 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 #: stock/api.py:515 templates/email/overdue_purchase_order.html:16 @@ -3767,7 +3777,7 @@ msgid "Supplier part description" msgstr "供應商零件説明" #: company/models.py:833 order/serializers.py:813 order/serializers.py:2024 -#: part/models.py:4299 part/models.py:4640 +#: part/models.py:4356 part/models.py:4697 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3777,15 +3787,15 @@ msgstr "供應商零件説明" msgid "Note" msgstr "備註" -#: company/models.py:842 part/models.py:2132 +#: company/models.py:842 part/models.py:2182 msgid "base cost" msgstr "基本費用" -#: company/models.py:843 part/models.py:2133 +#: company/models.py:843 part/models.py:2183 msgid "Minimum charge (e.g. stocking fee)" msgstr "最低費用(例如庫存費)" -#: company/models.py:850 order/serializers.py:805 stock/models.py:901 +#: company/models.py:850 order/serializers.py:805 stock/models.py:970 #: stock/serializers.py:1636 msgid "Packaging" msgstr "打包" @@ -3802,7 +3812,7 @@ msgstr "包裝數量" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "單包供應的總數量。為單個項目留空。" -#: company/models.py:877 part/models.py:2139 +#: company/models.py:877 part/models.py:2189 msgid "multiple" msgstr "多個" @@ -3978,7 +3988,7 @@ msgstr "原始行數據" msgid "Errors" msgstr "錯誤" -#: importer/models.py:519 part/api.py:857 +#: importer/models.py:519 part/api.py:864 msgid "Valid" msgstr "有效" @@ -4078,7 +4088,7 @@ msgstr "每個標籤要打印的份數" msgid "Connected" msgstr "已連接" -#: machine/machine_types/label_printer.py:229 order/api.py:1666 +#: machine/machine_types/label_printer.py:229 order/api.py:1679 msgid "Unknown" msgstr "未知" @@ -4166,101 +4176,101 @@ msgstr "設備配置" msgid "Config type" msgstr "配置類型" -#: order/api.py:115 +#: order/api.py:118 msgid "Order Reference" msgstr "訂單參考" -#: order/api.py:143 order/api.py:1127 +#: order/api.py:146 order/api.py:1139 msgid "Outstanding" msgstr "未完成" -#: order/api.py:159 +#: order/api.py:162 msgid "Has Project Code" msgstr "有項目編碼" -#: order/api.py:173 order/models.py:388 +#: order/api.py:176 order/models.py:475 msgid "Created By" msgstr "創建人" -#: order/api.py:177 +#: order/api.py:180 msgid "Created Before" msgstr "" -#: order/api.py:181 +#: order/api.py:184 msgid "Created After" msgstr "" -#: order/api.py:185 +#: order/api.py:188 msgid "Has Start Date" msgstr "" -#: order/api.py:193 +#: order/api.py:196 msgid "Start Date Before" msgstr "" -#: order/api.py:197 +#: order/api.py:200 msgid "Start Date After" msgstr "" -#: order/api.py:201 +#: order/api.py:204 msgid "Has Target Date" msgstr "" -#: order/api.py:209 +#: order/api.py:212 msgid "Target Date Before" msgstr "" -#: order/api.py:213 +#: order/api.py:216 msgid "Target Date After" msgstr "" -#: order/api.py:264 +#: order/api.py:267 msgid "Has Pricing" msgstr "有定價" -#: order/api.py:313 order/api.py:763 order/api.py:1362 +#: order/api.py:320 order/api.py:774 order/api.py:1375 msgid "Completed Before" msgstr "" -#: order/api.py:317 order/api.py:767 order/api.py:1366 +#: order/api.py:324 order/api.py:778 order/api.py:1379 msgid "Completed After" msgstr "" -#: order/api.py:484 order/api.py:865 order/api.py:1091 order/models.py:1558 -#: order/models.py:1676 order/models.py:1727 order/models.py:1855 -#: order/models.py:2021 order/models.py:2517 order/models.py:2583 +#: order/api.py:491 order/api.py:876 order/api.py:1102 order/models.py:1685 +#: order/models.py:1803 order/models.py:1854 order/models.py:2002 +#: order/models.py:2168 order/models.py:2690 order/models.py:2756 msgid "Order" msgstr "訂單" -#: order/api.py:488 order/api.py:903 +#: order/api.py:495 order/api.py:914 msgid "Order Complete" msgstr "訂單完成" -#: order/api.py:520 order/serializers.py:666 +#: order/api.py:527 order/api.py:531 order/serializers.py:666 msgid "Internal Part" msgstr "內部零件" -#: order/api.py:539 +#: order/api.py:549 msgid "Order Pending" msgstr "訂單待定" -#: order/api.py:888 +#: order/api.py:899 msgid "Completed" msgstr "已完成" -#: order/api.py:1143 +#: order/api.py:1155 msgid "Has Shipment" msgstr "" -#: order/api.py:1660 order/models.py:452 order/models.py:1559 -#: order/models.py:1677 +#: order/api.py:1673 order/models.py:539 order/models.py:1686 +#: order/models.py:1804 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:123 templates/email/overdue_purchase_order.html:15 msgid "Purchase Order" msgstr "採購訂單" -#: order/api.py:1662 order/models.py:975 order/models.py:1728 -#: order/models.py:1856 order/models.py:2022 +#: order/api.py:1675 order/models.py:1080 order/models.py:1855 +#: order/models.py:2003 order/models.py:2169 #: report/templates/report/inventree_build_order_report.html:135 #: report/templates/report/inventree_sales_order_report.html:14 #: report/templates/report/inventree_sales_order_shipment_report.html:15 @@ -4268,452 +4278,454 @@ msgstr "採購訂單" msgid "Sales Order" msgstr "銷售訂單" -#: order/api.py:1664 order/models.py:2193 order/models.py:2518 -#: order/models.py:2584 +#: order/api.py:1677 order/models.py:2340 order/models.py:2691 +#: order/models.py:2757 #: report/templates/report/inventree_return_order_report.html:13 +#: templates/email/overdue_return_order.html:15 msgid "Return Order" msgstr "退貨訂單" -#: order/models.py:88 +#: order/models.py:89 #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 msgid "Total Price" msgstr "總價格" -#: order/models.py:89 +#: order/models.py:90 msgid "Total price for this order" msgstr "此訂單的總價" -#: order/models.py:94 order/serializers.py:75 +#: order/models.py:95 order/serializers.py:75 msgid "Order Currency" msgstr "訂單貨幣" -#: order/models.py:97 order/serializers.py:76 +#: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" msgstr "此訂單的貨幣 (留空以使用公司默認值)" -#: order/models.py:236 +#: order/models.py:323 msgid "This order is locked and cannot be modified" msgstr "" -#: order/models.py:283 +#: order/models.py:370 msgid "Contact does not match selected company" msgstr "聯繫人與所選公司不匹配" -#: order/models.py:290 +#: order/models.py:377 msgid "Start date must be before target date" msgstr "" -#: order/models.py:343 +#: order/models.py:430 msgid "Order description (optional)" msgstr "訂單描述 (可選)" -#: order/models.py:352 +#: order/models.py:439 msgid "Select project code for this order" msgstr "為此訂單選擇項目編碼" -#: order/models.py:358 order/models.py:1459 order/models.py:1910 +#: order/models.py:445 order/models.py:1586 order/models.py:2057 msgid "Link to external page" msgstr "鏈接到外部頁面" -#: order/models.py:365 +#: order/models.py:452 msgid "Start date" msgstr "" -#: order/models.py:366 +#: order/models.py:453 msgid "Scheduled start date for this order" msgstr "" -#: order/models.py:372 order/models.py:1466 order/serializers.py:267 +#: order/models.py:459 order/models.py:1593 order/serializers.py:267 #: report/templates/report/inventree_build_order_report.html:125 msgid "Target Date" msgstr "預計日期" -#: order/models.py:374 +#: order/models.py:461 msgid "Expected date for order delivery. Order will be overdue after this date." msgstr "訂單交付的預期日期。訂單將在此日期後過期。" -#: order/models.py:394 +#: order/models.py:481 msgid "Issue Date" msgstr "簽發日期" -#: order/models.py:395 +#: order/models.py:482 msgid "Date order was issued" msgstr "訂單發出日期" -#: order/models.py:403 +#: order/models.py:490 msgid "User or group responsible for this order" msgstr "負責此訂單的用户或組" -#: order/models.py:414 +#: order/models.py:501 msgid "Point of contact for this order" msgstr "此訂單的聯繫人" -#: order/models.py:424 +#: order/models.py:511 msgid "Company address for this order" msgstr "此訂單的公司地址" -#: order/models.py:500 order/models.py:1021 +#: order/models.py:602 order/models.py:1141 msgid "Order reference" msgstr "訂單參考" -#: order/models.py:510 +#: order/models.py:612 msgid "Purchase order status" msgstr "採購訂單狀態" -#: order/models.py:525 +#: order/models.py:627 msgid "Company from which the items are being ordered" msgstr "訂購物品的公司" -#: order/models.py:536 +#: order/models.py:638 msgid "Supplier Reference" msgstr "供應商參考" -#: order/models.py:537 +#: order/models.py:639 msgid "Supplier order reference code" msgstr "供應商訂單參考代碼" -#: order/models.py:546 +#: order/models.py:648 msgid "received by" msgstr "接收人" -#: order/models.py:553 order/models.py:2281 +#: order/models.py:655 order/models.py:2443 msgid "Date order was completed" msgstr "訂單完成日期" -#: order/models.py:562 order/models.py:1606 +#: order/models.py:664 order/models.py:1733 msgid "Destination" msgstr "目的地" -#: order/models.py:563 order/models.py:1610 +#: order/models.py:665 order/models.py:1737 msgid "Destination for received items" msgstr "" -#: order/models.py:609 +#: order/models.py:711 msgid "Part supplier must match PO supplier" msgstr "零件供應商必須與採購訂單供應商匹配" -#: order/models.py:867 +#: order/models.py:971 msgid "Quantity must be a positive number" msgstr "數量必須是正數" -#: order/models.py:1032 order/models.py:2253 stock/models.py:923 -#: stock/models.py:924 stock/serializers.py:1373 +#: order/models.py:1152 order/models.py:2415 stock/models.py:992 +#: stock/models.py:993 stock/serializers.py:1373 +#: templates/email/overdue_return_order.html:16 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "客户" -#: order/models.py:1033 +#: order/models.py:1153 msgid "Company to which the items are being sold" msgstr "出售物品的公司" -#: order/models.py:1046 +#: order/models.py:1166 msgid "Sales order status" msgstr "銷售訂單狀態" -#: order/models.py:1057 order/models.py:2273 +#: order/models.py:1177 order/models.py:2435 msgid "Customer Reference " msgstr "客户參考 " -#: order/models.py:1058 order/models.py:2274 +#: order/models.py:1178 order/models.py:2436 msgid "Customer order reference code" msgstr "客户訂單參考代碼" -#: order/models.py:1062 order/models.py:1862 +#: order/models.py:1182 order/models.py:2009 msgid "Shipment Date" msgstr "發貨日期" -#: order/models.py:1071 +#: order/models.py:1191 msgid "shipped by" msgstr "發貨人" -#: order/models.py:1110 +#: order/models.py:1230 msgid "Order is already complete" msgstr "訂單已完成" -#: order/models.py:1113 +#: order/models.py:1233 msgid "Order is already cancelled" msgstr "訂單已取消" -#: order/models.py:1117 +#: order/models.py:1237 msgid "Only an open order can be marked as complete" msgstr "只有未結訂單才能標記為已完成" -#: order/models.py:1121 +#: order/models.py:1241 msgid "Order cannot be completed as there are incomplete shipments" msgstr "由於發貨不完整,訂單無法完成" -#: order/models.py:1126 +#: order/models.py:1246 msgid "Order cannot be completed as there are incomplete allocations" msgstr "" -#: order/models.py:1131 +#: order/models.py:1251 msgid "Order cannot be completed as there are incomplete line items" msgstr "訂單無法完成,因為行項目不完整" -#: order/models.py:1408 order/models.py:1421 +#: order/models.py:1535 order/models.py:1548 msgid "The order is locked and cannot be modified" msgstr "" -#: order/models.py:1429 +#: order/models.py:1556 msgid "Item quantity" msgstr "項目數量" -#: order/models.py:1446 +#: order/models.py:1573 msgid "Line item reference" msgstr "行項目參考" -#: order/models.py:1453 +#: order/models.py:1580 msgid "Line item notes" msgstr "行項目註釋" -#: order/models.py:1468 +#: order/models.py:1595 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "此行項目的目標日期 (留空以使用訂單中的目標日期)" -#: order/models.py:1489 +#: order/models.py:1616 msgid "Line item description (optional)" msgstr "行項目描述 (可選)" -#: order/models.py:1496 +#: order/models.py:1623 msgid "Additional context for this line" msgstr "此行的附加上下文" -#: order/models.py:1506 +#: order/models.py:1633 msgid "Unit price" msgstr "單位價格" -#: order/models.py:1520 +#: order/models.py:1647 msgid "Purchase Order Line Item" msgstr "採購訂單行項目" -#: order/models.py:1544 +#: order/models.py:1671 msgid "Supplier part must match supplier" msgstr "供應商零件必須與供應商匹配" -#: order/models.py:1578 +#: order/models.py:1705 msgid "Supplier part" msgstr "供應商零件" -#: order/models.py:1585 +#: order/models.py:1712 msgid "Received" msgstr "已接收" -#: order/models.py:1586 +#: order/models.py:1713 msgid "Number of items received" msgstr "收到的物品數量" -#: order/models.py:1594 stock/models.py:1046 stock/serializers.py:670 +#: order/models.py:1721 stock/models.py:1115 stock/serializers.py:670 msgid "Purchase Price" msgstr "採購價格" -#: order/models.py:1595 +#: order/models.py:1722 msgid "Unit purchase price" msgstr "每單位的採購價格" -#: order/models.py:1665 +#: order/models.py:1792 msgid "Purchase Order Extra Line" msgstr "採購訂單附加行" -#: order/models.py:1694 +#: order/models.py:1821 msgid "Sales Order Line Item" msgstr "銷售訂單行項目" -#: order/models.py:1715 +#: order/models.py:1842 msgid "Virtual part cannot be assigned to a sales order" msgstr "虛擬零件不能分配給銷售訂單" -#: order/models.py:1720 +#: order/models.py:1847 msgid "Only salable parts can be assigned to a sales order" msgstr "只有可銷售的零件才能分配給銷售訂單" -#: order/models.py:1746 +#: order/models.py:1873 msgid "Sale Price" msgstr "售出價格" -#: order/models.py:1747 +#: order/models.py:1874 msgid "Unit sale price" msgstr "單位售出價格" -#: order/models.py:1756 order/status_codes.py:50 +#: order/models.py:1883 order/status_codes.py:50 msgid "Shipped" msgstr "已配送" -#: order/models.py:1757 +#: order/models.py:1884 msgid "Shipped quantity" msgstr "發貨數量" -#: order/models.py:1831 +#: order/models.py:1978 msgid "Sales Order Shipment" msgstr "銷售訂單發貨" -#: order/models.py:1863 +#: order/models.py:2010 msgid "Date of shipment" msgstr "發貨日期" -#: order/models.py:1869 +#: order/models.py:2016 msgid "Delivery Date" msgstr "送達日期" -#: order/models.py:1870 +#: order/models.py:2017 msgid "Date of delivery of shipment" msgstr "裝運交貨日期" -#: order/models.py:1878 +#: order/models.py:2025 msgid "Checked By" msgstr "審核人" -#: order/models.py:1879 +#: order/models.py:2026 msgid "User who checked this shipment" msgstr "檢查此裝運的用户" -#: order/models.py:1886 order/models.py:2118 order/serializers.py:1677 +#: order/models.py:2033 order/models.py:2265 order/serializers.py:1677 #: order/serializers.py:1801 #: report/templates/report/inventree_sales_order_shipment_report.html:14 msgid "Shipment" msgstr "配送" -#: order/models.py:1887 +#: order/models.py:2034 msgid "Shipment number" msgstr "配送單號" -#: order/models.py:1895 +#: order/models.py:2042 msgid "Tracking Number" msgstr "跟蹤單號" -#: order/models.py:1896 +#: order/models.py:2043 msgid "Shipment tracking information" msgstr "配送跟蹤信息" -#: order/models.py:1903 +#: order/models.py:2050 msgid "Invoice Number" msgstr "發票編號" -#: order/models.py:1904 +#: order/models.py:2051 msgid "Reference number for associated invoice" msgstr "相關發票的參考號" -#: order/models.py:1927 +#: order/models.py:2074 msgid "Shipment has already been sent" msgstr "貨物已發出" -#: order/models.py:1930 +#: order/models.py:2077 msgid "Shipment has no allocated stock items" msgstr "發貨沒有分配庫存項目" -#: order/models.py:2010 +#: order/models.py:2157 msgid "Sales Order Extra Line" msgstr "銷售訂單加行" -#: order/models.py:2039 +#: order/models.py:2186 msgid "Sales Order Allocation" msgstr "銷售訂單分配" -#: order/models.py:2062 order/models.py:2064 +#: order/models.py:2209 order/models.py:2211 msgid "Stock item has not been assigned" msgstr "庫存項目尚未分配" -#: order/models.py:2071 +#: order/models.py:2218 msgid "Cannot allocate stock item to a line with a different part" msgstr "無法將庫存項目分配給具有不同零件的行" -#: order/models.py:2074 +#: order/models.py:2221 msgid "Cannot allocate stock to a line without a part" msgstr "無法將庫存分配給沒有零件的生產線" -#: order/models.py:2077 +#: order/models.py:2224 msgid "Allocation quantity cannot exceed stock quantity" msgstr "分配數量不能超過庫存數量" -#: order/models.py:2096 order/serializers.py:1547 +#: order/models.py:2243 order/serializers.py:1547 msgid "Quantity must be 1 for serialized stock item" msgstr "序列化庫存項目的數量必須為1" -#: order/models.py:2099 +#: order/models.py:2246 msgid "Sales order does not match shipment" msgstr "銷售訂單與發貨不匹配" -#: order/models.py:2100 plugin/base/barcodes/api.py:651 +#: order/models.py:2247 plugin/base/barcodes/api.py:652 msgid "Shipment does not match sales order" msgstr "發貨與銷售訂單不匹配" -#: order/models.py:2108 +#: order/models.py:2255 msgid "Line" msgstr "行" -#: order/models.py:2119 +#: order/models.py:2266 msgid "Sales order shipment reference" msgstr "銷售訂單發貨參考" -#: order/models.py:2132 order/models.py:2525 +#: order/models.py:2279 order/models.py:2698 msgid "Item" msgstr "項目" -#: order/models.py:2133 +#: order/models.py:2280 msgid "Select stock item to allocate" msgstr "選擇要分配的庫存項目" -#: order/models.py:2142 +#: order/models.py:2289 msgid "Enter stock allocation quantity" msgstr "輸入庫存分配數量" -#: order/models.py:2242 +#: order/models.py:2404 msgid "Return Order reference" msgstr "退貨訂單參考" -#: order/models.py:2254 +#: order/models.py:2416 msgid "Company from which items are being returned" msgstr "退回物品的公司" -#: order/models.py:2267 +#: order/models.py:2429 msgid "Return order status" msgstr "退貨訂單狀態" -#: order/models.py:2483 +#: order/models.py:2656 msgid "Return Order Line Item" msgstr "退貨訂單行項目" -#: order/models.py:2496 +#: order/models.py:2669 msgid "Stock item must be specified" msgstr "" -#: order/models.py:2500 +#: order/models.py:2673 msgid "Return quantity exceeds stock quantity" msgstr "" -#: order/models.py:2505 +#: order/models.py:2678 msgid "Return quantity must be greater than zero" msgstr "" -#: order/models.py:2510 +#: order/models.py:2683 msgid "Invalid quantity for serialized stock item" msgstr "" -#: order/models.py:2526 +#: order/models.py:2699 msgid "Select item to return from customer" msgstr "選擇要從客户處退回的商品" -#: order/models.py:2541 +#: order/models.py:2714 msgid "Received Date" msgstr "接收日期" -#: order/models.py:2542 +#: order/models.py:2715 msgid "The date this this return item was received" msgstr "收到此退貨的日期" -#: order/models.py:2554 +#: order/models.py:2727 msgid "Outcome" msgstr "結果" -#: order/models.py:2555 +#: order/models.py:2728 msgid "Outcome for this line item" msgstr "該行項目的結果" -#: order/models.py:2562 +#: order/models.py:2735 msgid "Cost associated with return or repair for this line item" msgstr "與此行項目的退貨或維修相關的成本" -#: order/models.py:2572 +#: order/models.py:2745 msgid "Return Order Extra Line" msgstr "退貨訂單附加行" @@ -4808,7 +4820,7 @@ msgstr "將具有相同零件、目的地和目標日期的項目合併到一個 msgid "SKU" msgstr "庫存量單位" -#: order/serializers.py:662 part/models.py:1048 part/serializers.py:404 +#: order/serializers.py:662 part/models.py:1089 part/serializers.py:404 msgid "Internal Part Number" msgstr "內部零件編號" @@ -4848,7 +4860,7 @@ msgstr "為收到的物品選擇目的地位置" msgid "Enter batch code for incoming stock items" msgstr "輸入入庫項目的批號" -#: order/serializers.py:783 stock/models.py:1005 users/models.py:142 +#: order/serializers.py:783 stock/models.py:1074 users/models.py:142 msgid "Expiry Date" msgstr "有效期至" @@ -5005,905 +5017,914 @@ msgstr "退款" msgid "Reject" msgstr "拒絕" -#: order/tasks.py:32 +#: order/tasks.py:44 msgid "Overdue Purchase Order" msgstr "逾期採購訂單" -#: order/tasks.py:37 +#: order/tasks.py:49 #, python-brace-format msgid "Purchase order {po} is now overdue" msgstr "採購訂單 {po} 已逾期" -#: order/tasks.py:82 +#: order/tasks.py:112 msgid "Overdue Sales Order" msgstr "逾期銷售訂單" -#: order/tasks.py:87 +#: order/tasks.py:117 #, python-brace-format msgid "Sales order {so} is now overdue" msgstr "銷售訂單 {so} 已逾期" -#: part/api.py:114 +#: order/tasks.py:177 +msgid "Overdue Return Order" +msgstr "" + +#: order/tasks.py:182 +#, python-brace-format +msgid "Return order {ro} is now overdue" +msgstr "" + +#: part/api.py:115 msgid "Starred" msgstr "已加星標" -#: part/api.py:116 +#: part/api.py:117 msgid "Filter by starred categories" msgstr "按星標類別篩選" -#: part/api.py:133 stock/api.py:254 +#: part/api.py:134 stock/api.py:254 msgid "Depth" msgstr "深度" -#: part/api.py:133 +#: part/api.py:134 msgid "Filter by category depth" msgstr "按類別深度篩選" -#: part/api.py:151 stock/api.py:272 +#: part/api.py:152 stock/api.py:272 msgid "Top Level" msgstr "頂級" -#: part/api.py:153 +#: part/api.py:154 msgid "Filter by top-level categories" msgstr "按頂級類別篩選" -#: part/api.py:166 stock/api.py:287 +#: part/api.py:167 stock/api.py:287 msgid "Cascade" msgstr "級聯" -#: part/api.py:168 +#: part/api.py:169 msgid "Include sub-categories in filtered results" msgstr "在篩選結果中包含子類別" -#: part/api.py:188 +#: part/api.py:189 msgid "Parent" msgstr "父類" -#: part/api.py:190 +#: part/api.py:191 msgid "Filter by parent category" msgstr "按父類別篩選" -#: part/api.py:225 +#: part/api.py:226 msgid "Exclude sub-categories under the specified category" msgstr "排除指定類別下的子類別" -#: part/api.py:437 +#: part/api.py:438 msgid "Has Results" msgstr "有結果" -#: part/api.py:604 +#: part/api.py:611 msgid "Incoming Purchase Order" msgstr "收到的採購訂單" -#: part/api.py:618 +#: part/api.py:625 msgid "Outgoing Sales Order" msgstr "外發銷售訂單" -#: part/api.py:630 +#: part/api.py:637 msgid "Stock produced by Build Order" msgstr "建造生產訂單產生的庫存" -#: part/api.py:712 +#: part/api.py:719 msgid "Stock required for Build Order" msgstr "生產訂單所需的庫存" -#: part/api.py:858 +#: part/api.py:865 msgid "Validate entire Bill of Materials" msgstr "驗證整個物料清單" -#: part/api.py:864 +#: part/api.py:871 msgid "This option must be selected" msgstr "必須選擇此項" -#: part/api.py:900 +#: part/api.py:907 msgid "Is Variant" msgstr "" -#: part/api.py:908 +#: part/api.py:915 msgid "Is Revision" msgstr "是修訂版本" -#: part/api.py:918 +#: part/api.py:925 msgid "Has Revisions" msgstr "有修訂版本" -#: part/api.py:1109 +#: part/api.py:1116 msgid "BOM Valid" msgstr "物料清單合規" -#: part/api.py:1764 +#: part/api.py:1772 msgid "Assembly part is testable" msgstr "裝配部份是可測試的" -#: part/api.py:1773 +#: part/api.py:1781 msgid "Component part is testable" msgstr "組件部份是可測試的" -#: part/api.py:1824 +#: part/api.py:1832 msgid "Uses" msgstr "使用" -#: part/models.py:89 part/models.py:4080 +#: part/models.py:90 part/models.py:4137 #: templates/email/part_event_notification.html:16 msgid "Part Category" msgstr "零件類別" -#: part/models.py:90 users/models.py:220 +#: part/models.py:91 users/models.py:220 msgid "Part Categories" msgstr "零件類別" -#: part/models.py:108 part/models.py:1093 +#: part/models.py:109 part/models.py:1134 msgid "Default Location" msgstr "默認位置" -#: part/models.py:109 +#: part/models.py:110 msgid "Default location for parts in this category" msgstr "此類別零件的默認庫存地點" -#: part/models.py:114 stock/models.py:194 +#: part/models.py:115 stock/models.py:213 msgid "Structural" msgstr "結構性" -#: part/models.py:116 +#: part/models.py:117 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "零件可能無法直接分配到結構類別,但可以分配到子類別。" -#: part/models.py:125 +#: part/models.py:126 msgid "Default keywords" msgstr "默認關鍵字" -#: part/models.py:126 +#: part/models.py:127 msgid "Default keywords for parts in this category" msgstr "此類別零件的默認關鍵字" -#: part/models.py:133 stock/models.py:96 stock/models.py:176 +#: part/models.py:134 stock/models.py:97 stock/models.py:195 msgid "Icon" msgstr "圖標" -#: part/models.py:134 part/serializers.py:147 part/serializers.py:166 -#: stock/models.py:177 +#: part/models.py:135 part/serializers.py:147 part/serializers.py:166 +#: stock/models.py:196 msgid "Icon (optional)" msgstr "圖標(可選)" -#: part/models.py:178 +#: part/models.py:179 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "您不能使這個零件類別結構化,因為有些零件已經分配給了它!" -#: part/models.py:418 part/serializers.py:128 part/serializers.py:337 +#: part/models.py:458 part/serializers.py:128 part/serializers.py:337 #: users/models.py:221 msgid "Parts" msgstr "零件" -#: part/models.py:470 +#: part/models.py:510 msgid "Cannot delete this part as it is locked" msgstr "無法刪除這個零件,因為它已被鎖定" -#: part/models.py:473 +#: part/models.py:513 msgid "Cannot delete this part as it is still active" msgstr "無法刪除這個零件,因為它仍然處於活動狀態" -#: part/models.py:478 +#: part/models.py:518 msgid "Cannot delete this part as it is used in an assembly" msgstr "無法刪除這個零件,因為它被使用在了裝配中" -#: part/models.py:516 +#: part/models.py:556 msgid "Invalid choice for parent part" msgstr "無效的上級零件選擇" -#: part/models.py:564 part/models.py:571 +#: part/models.py:604 part/models.py:611 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "零件 \"{self}\" 不能用在 \"{parent}\" 的物料清單 (遞歸)" -#: part/models.py:583 +#: part/models.py:623 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "零件 \"{parent}\" 被使用在了 \"{self}\" 的物料清單 (遞歸)" -#: part/models.py:650 +#: part/models.py:690 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "內部零件號必須匹配正則表達式 {pattern}" -#: part/models.py:658 +#: part/models.py:698 msgid "Part cannot be a revision of itself" msgstr "零件不能是對自身的修訂" -#: part/models.py:665 +#: part/models.py:705 msgid "Cannot make a revision of a part which is already a revision" msgstr "無法對已經是修訂版本的零件進行修訂" -#: part/models.py:672 +#: part/models.py:712 msgid "Revision code must be specified" msgstr "必須指定修訂代碼" -#: part/models.py:679 +#: part/models.py:719 msgid "Revisions are only allowed for assembly parts" msgstr "修訂僅對裝配零件允許" -#: part/models.py:686 +#: part/models.py:726 msgid "Cannot make a revision of a template part" msgstr "無法對模版零件進行修訂" -#: part/models.py:692 +#: part/models.py:732 msgid "Parent part must point to the same template" msgstr "上級零件必須指向相同的模版" -#: part/models.py:788 +#: part/models.py:829 msgid "Stock item with this serial number already exists" msgstr "該序列號庫存項己存在" -#: part/models.py:930 +#: part/models.py:971 msgid "Duplicate IPN not allowed in part settings" msgstr "在零件設置中不允許重複的內部零件號" -#: part/models.py:942 +#: part/models.py:983 msgid "Duplicate part revision already exists." msgstr "重複的零件修訂版本已經存在。" -#: part/models.py:951 +#: part/models.py:992 msgid "Part with this Name, IPN and Revision already exists." msgstr "有這個名字,內部零件號,和修訂版本的零件已經存在" -#: part/models.py:966 +#: part/models.py:1007 msgid "Parts cannot be assigned to structural part categories!" msgstr "零件不能分配到結構性零件類別!" -#: part/models.py:998 +#: part/models.py:1039 msgid "Part name" msgstr "零件名稱" -#: part/models.py:1003 +#: part/models.py:1044 msgid "Is Template" msgstr "是模板" -#: part/models.py:1004 +#: part/models.py:1045 msgid "Is this part a template part?" msgstr "這個零件是一個模版零件嗎?" -#: part/models.py:1014 +#: part/models.py:1055 msgid "Is this part a variant of another part?" msgstr "這個零件是另一零件的變體嗎?" -#: part/models.py:1015 +#: part/models.py:1056 msgid "Variant Of" msgstr "變體" -#: part/models.py:1022 +#: part/models.py:1063 msgid "Part description (optional)" msgstr "零件描述(可選)" -#: part/models.py:1029 +#: part/models.py:1070 msgid "Keywords" msgstr "關鍵詞" -#: part/models.py:1030 +#: part/models.py:1071 msgid "Part keywords to improve visibility in search results" msgstr "提高搜索結果可見性的零件關鍵字" -#: part/models.py:1040 +#: part/models.py:1081 msgid "Part category" msgstr "零件類別" -#: part/models.py:1047 part/serializers.py:918 +#: part/models.py:1088 part/serializers.py:918 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "內部零件號 IPN" -#: part/models.py:1055 +#: part/models.py:1096 msgid "Part revision or version number" msgstr "零件修訂版本或版本號" -#: part/models.py:1056 report/models.py:157 +#: part/models.py:1097 report/models.py:210 msgid "Revision" msgstr "版本" -#: part/models.py:1065 +#: part/models.py:1106 msgid "Is this part a revision of another part?" msgstr "這零件是另一零件的修訂版本嗎?" -#: part/models.py:1066 +#: part/models.py:1107 msgid "Revision Of" msgstr "修訂版本" -#: part/models.py:1091 +#: part/models.py:1132 msgid "Where is this item normally stored?" msgstr "該物品通常存放在哪裏?" -#: part/models.py:1137 +#: part/models.py:1178 msgid "Default Supplier" msgstr "默認供應商" -#: part/models.py:1138 +#: part/models.py:1179 msgid "Default supplier part" msgstr "默認供應商零件" -#: part/models.py:1145 +#: part/models.py:1186 msgid "Default Expiry" msgstr "默認到期" -#: part/models.py:1146 +#: part/models.py:1187 msgid "Expiry time (in days) for stock items of this part" msgstr "此零件庫存項的過期時間 (天)" -#: part/models.py:1154 part/serializers.py:947 +#: part/models.py:1195 part/serializers.py:947 msgid "Minimum Stock" msgstr "最低庫存" -#: part/models.py:1155 +#: part/models.py:1196 msgid "Minimum allowed stock level" msgstr "允許的最小庫存量" -#: part/models.py:1164 +#: part/models.py:1205 msgid "Units of measure for this part" msgstr "此零件的計量單位" -#: part/models.py:1171 +#: part/models.py:1212 msgid "Can this part be built from other parts?" msgstr "這個零件可由其他零件加工而成嗎?" -#: part/models.py:1177 +#: part/models.py:1218 msgid "Can this part be used to build other parts?" msgstr "這個零件可用於創建其他零件嗎?" -#: part/models.py:1183 +#: part/models.py:1224 msgid "Does this part have tracking for unique items?" msgstr "此零件是否有唯一物品的追蹤功能" -#: part/models.py:1189 +#: part/models.py:1230 msgid "Can this part have test results recorded against it?" msgstr "這一部分能否記錄到測試結果?" -#: part/models.py:1195 +#: part/models.py:1236 msgid "Can this part be purchased from external suppliers?" msgstr "這個零件可從外部供應商購買嗎?" -#: part/models.py:1201 +#: part/models.py:1242 msgid "Can this part be sold to customers?" msgstr "此零件可以銷售給客户嗎?" -#: part/models.py:1205 +#: part/models.py:1246 msgid "Is this part active?" msgstr "這個零件是否已激活?" -#: part/models.py:1211 +#: part/models.py:1252 msgid "Locked parts cannot be edited" msgstr "無法編輯鎖定的零件" -#: part/models.py:1217 +#: part/models.py:1258 msgid "Is this a virtual part, such as a software product or license?" msgstr "這是一個虛擬零件,例如一個軟件產品或許可證嗎?" -#: part/models.py:1223 +#: part/models.py:1264 msgid "BOM checksum" msgstr "物料清單校驗和" -#: part/models.py:1224 +#: part/models.py:1265 msgid "Stored BOM checksum" msgstr "保存的物料清單校驗和" -#: part/models.py:1232 +#: part/models.py:1273 msgid "BOM checked by" msgstr "物料清單檢查人" -#: part/models.py:1237 +#: part/models.py:1278 msgid "BOM checked date" msgstr "物料清單檢查日期" -#: part/models.py:1253 +#: part/models.py:1294 msgid "Creation User" msgstr "新建用户" -#: part/models.py:1263 +#: part/models.py:1304 msgid "Owner responsible for this part" msgstr "此零件的負責人" -#: part/models.py:1268 +#: part/models.py:1309 msgid "Last Stocktake" msgstr "最近庫存盤點" -#: part/models.py:2140 +#: part/models.py:2190 msgid "Sell multiple" msgstr "出售多個" -#: part/models.py:3128 +#: part/models.py:3185 msgid "Currency used to cache pricing calculations" msgstr "用於緩存定價計算的貨幣" -#: part/models.py:3144 +#: part/models.py:3201 msgid "Minimum BOM Cost" msgstr "最低物料清單成本" -#: part/models.py:3145 +#: part/models.py:3202 msgid "Minimum cost of component parts" msgstr "元件的最低成本" -#: part/models.py:3151 +#: part/models.py:3208 msgid "Maximum BOM Cost" msgstr "物料清單的最高成本" -#: part/models.py:3152 +#: part/models.py:3209 msgid "Maximum cost of component parts" msgstr "元件的最高成本" -#: part/models.py:3158 +#: part/models.py:3215 msgid "Minimum Purchase Cost" msgstr "最低購買成本" -#: part/models.py:3159 +#: part/models.py:3216 msgid "Minimum historical purchase cost" msgstr "最高歷史購買成本" -#: part/models.py:3165 +#: part/models.py:3222 msgid "Maximum Purchase Cost" msgstr "最大購買成本" -#: part/models.py:3166 +#: part/models.py:3223 msgid "Maximum historical purchase cost" msgstr "最高歷史購買成本" -#: part/models.py:3172 +#: part/models.py:3229 msgid "Minimum Internal Price" msgstr "最低內部價格" -#: part/models.py:3173 +#: part/models.py:3230 msgid "Minimum cost based on internal price breaks" msgstr "基於內部批發價的最低成本" -#: part/models.py:3179 +#: part/models.py:3236 msgid "Maximum Internal Price" msgstr "最大內部價格" -#: part/models.py:3180 +#: part/models.py:3237 msgid "Maximum cost based on internal price breaks" msgstr "基於內部批發價的最高成本" -#: part/models.py:3186 +#: part/models.py:3243 msgid "Minimum Supplier Price" msgstr "供應商最低價格" -#: part/models.py:3187 +#: part/models.py:3244 msgid "Minimum price of part from external suppliers" msgstr "外部供應商零件的最低價格" -#: part/models.py:3193 +#: part/models.py:3250 msgid "Maximum Supplier Price" msgstr "供應商最高價格" -#: part/models.py:3194 +#: part/models.py:3251 msgid "Maximum price of part from external suppliers" msgstr "來自外部供應商的商零件的最高價格" -#: part/models.py:3200 +#: part/models.py:3257 msgid "Minimum Variant Cost" msgstr "最小變體成本" -#: part/models.py:3201 +#: part/models.py:3258 msgid "Calculated minimum cost of variant parts" msgstr "計算出的變體零件的最低成本" -#: part/models.py:3207 +#: part/models.py:3264 msgid "Maximum Variant Cost" msgstr "最大變體成本" -#: part/models.py:3208 +#: part/models.py:3265 msgid "Calculated maximum cost of variant parts" msgstr "計算出的變體零件的最大成本" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3271 part/models.py:3285 msgid "Minimum Cost" msgstr "最低成本" -#: part/models.py:3215 +#: part/models.py:3272 msgid "Override minimum cost" msgstr "覆蓋最低成本" -#: part/models.py:3221 part/models.py:3235 +#: part/models.py:3278 part/models.py:3292 msgid "Maximum Cost" msgstr "最高成本" -#: part/models.py:3222 +#: part/models.py:3279 msgid "Override maximum cost" msgstr "覆蓋最大成本" -#: part/models.py:3229 +#: part/models.py:3286 msgid "Calculated overall minimum cost" msgstr "計算總最低成本" -#: part/models.py:3236 +#: part/models.py:3293 msgid "Calculated overall maximum cost" msgstr "計算總最大成本" -#: part/models.py:3242 +#: part/models.py:3299 msgid "Minimum Sale Price" msgstr "最低售出價格" -#: part/models.py:3243 +#: part/models.py:3300 msgid "Minimum sale price based on price breaks" msgstr "基於批發價的最低售出價格" -#: part/models.py:3249 +#: part/models.py:3306 msgid "Maximum Sale Price" msgstr "最高售出價格" -#: part/models.py:3250 +#: part/models.py:3307 msgid "Maximum sale price based on price breaks" msgstr "基於批發價的最大售出價格" -#: part/models.py:3256 +#: part/models.py:3313 msgid "Minimum Sale Cost" msgstr "最低銷售成本" -#: part/models.py:3257 +#: part/models.py:3314 msgid "Minimum historical sale price" msgstr "歷史最低售出價格" -#: part/models.py:3263 +#: part/models.py:3320 msgid "Maximum Sale Cost" msgstr "最高銷售成本" -#: part/models.py:3264 +#: part/models.py:3321 msgid "Maximum historical sale price" msgstr "歷史最高售出價格" -#: part/models.py:3283 +#: part/models.py:3340 msgid "Part for stocktake" msgstr "用於盤點的零件" -#: part/models.py:3288 +#: part/models.py:3345 msgid "Item Count" msgstr "物品數量" -#: part/models.py:3289 +#: part/models.py:3346 msgid "Number of individual stock entries at time of stocktake" msgstr "盤點時的個別庫存條目數" -#: part/models.py:3297 +#: part/models.py:3354 msgid "Total available stock at time of stocktake" msgstr "盤點時可用庫存總額" -#: part/models.py:3301 part/models.py:3384 part/serializers.py:268 +#: part/models.py:3358 part/models.py:3441 part/serializers.py:268 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "日期" -#: part/models.py:3302 +#: part/models.py:3359 msgid "Date stocktake was performed" msgstr "進行盤點的日期" -#: part/models.py:3310 +#: part/models.py:3367 msgid "Additional notes" msgstr "附加註釋" -#: part/models.py:3320 +#: part/models.py:3377 msgid "User who performed this stocktake" msgstr "進行此盤點的用户" -#: part/models.py:3326 +#: part/models.py:3383 msgid "Minimum Stock Cost" msgstr "最低庫存成本" -#: part/models.py:3327 +#: part/models.py:3384 msgid "Estimated minimum cost of stock on hand" msgstr "現有存庫存最低成本估算" -#: part/models.py:3333 +#: part/models.py:3390 msgid "Maximum Stock Cost" msgstr "最高庫存成本" -#: part/models.py:3334 +#: part/models.py:3391 msgid "Estimated maximum cost of stock on hand" msgstr "目前庫存最高成本估算" -#: part/models.py:3390 +#: part/models.py:3447 msgid "Report" msgstr "報告" -#: part/models.py:3391 +#: part/models.py:3448 msgid "Stocktake report file (generated internally)" msgstr "盤點報告文件(內部生成)" -#: part/models.py:3396 +#: part/models.py:3453 msgid "Part Count" msgstr "零件計數" -#: part/models.py:3397 +#: part/models.py:3454 msgid "Number of parts covered by stocktake" msgstr "盤點涵蓋的零件數量" -#: part/models.py:3407 +#: part/models.py:3464 msgid "User who requested this stocktake report" msgstr "請求此盤點報告的用户" -#: part/models.py:3417 +#: part/models.py:3474 msgid "Part Sale Price Break" msgstr "零件售出價格折扣" -#: part/models.py:3529 +#: part/models.py:3586 msgid "Part Test Template" msgstr "零件測試模板" -#: part/models.py:3555 +#: part/models.py:3612 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "模板名稱無效 - 必須包含至少一個字母或者數字" -#: part/models.py:3576 part/models.py:3746 +#: part/models.py:3633 part/models.py:3803 msgid "Choices must be unique" msgstr "選擇必須是唯一的" -#: part/models.py:3587 +#: part/models.py:3644 msgid "Test templates can only be created for testable parts" msgstr "測試模板只能為可拆分的部件創建" -#: part/models.py:3598 +#: part/models.py:3655 msgid "Test template with the same key already exists for part" msgstr "零件已存在具有相同主鍵的測試模板" -#: part/models.py:3615 +#: part/models.py:3672 msgid "Test Name" msgstr "測試名" -#: part/models.py:3616 +#: part/models.py:3673 msgid "Enter a name for the test" msgstr "輸入測試的名稱" -#: part/models.py:3622 +#: part/models.py:3679 msgid "Test Key" msgstr "測試主鍵" -#: part/models.py:3623 +#: part/models.py:3680 msgid "Simplified key for the test" msgstr "簡化測試主鍵" -#: part/models.py:3630 +#: part/models.py:3687 msgid "Test Description" msgstr "測試説明" -#: part/models.py:3631 +#: part/models.py:3688 msgid "Enter description for this test" msgstr "輸入測試的描述" -#: part/models.py:3635 report/models.py:213 +#: part/models.py:3692 report/models.py:266 msgid "Enabled" msgstr "已啓用" -#: part/models.py:3635 +#: part/models.py:3692 msgid "Is this test enabled?" msgstr "此測試是否已啓用?" -#: part/models.py:3640 +#: part/models.py:3697 msgid "Required" msgstr "必須的" -#: part/models.py:3641 +#: part/models.py:3698 msgid "Is this test required to pass?" msgstr "需要此測試才能通過嗎?" -#: part/models.py:3646 +#: part/models.py:3703 msgid "Requires Value" msgstr "需要值" -#: part/models.py:3647 +#: part/models.py:3704 msgid "Does this test require a value when adding a test result?" msgstr "添加測試結果時是否需要一個值?" -#: part/models.py:3652 +#: part/models.py:3709 msgid "Requires Attachment" msgstr "需要附件" -#: part/models.py:3654 +#: part/models.py:3711 msgid "Does this test require a file attachment when adding a test result?" msgstr "添加測試結果時是否需要文件附件?" -#: part/models.py:3660 part/models.py:3808 +#: part/models.py:3717 part/models.py:3865 msgid "Choices" msgstr "選項" -#: part/models.py:3661 +#: part/models.py:3718 msgid "Valid choices for this test (comma-separated)" msgstr "此測試的有效選擇 (逗號分隔)" -#: part/models.py:3694 +#: part/models.py:3751 msgid "Part Parameter Template" msgstr "零件參數模板" -#: part/models.py:3721 +#: part/models.py:3778 msgid "Checkbox parameters cannot have units" msgstr "勾選框參數不能有單位" -#: part/models.py:3726 +#: part/models.py:3783 msgid "Checkbox parameters cannot have choices" msgstr "複選框參數不能有選項" -#: part/models.py:3763 +#: part/models.py:3820 msgid "Parameter template name must be unique" msgstr "參數模板名稱必須是唯一的" -#: part/models.py:3781 +#: part/models.py:3838 msgid "Parameter Name" msgstr "參數名稱" -#: part/models.py:3788 +#: part/models.py:3845 msgid "Physical units for this parameter" msgstr "此參數的物理單位" -#: part/models.py:3796 +#: part/models.py:3853 msgid "Parameter description" msgstr "參數説明" -#: part/models.py:3802 +#: part/models.py:3859 msgid "Checkbox" msgstr "勾選框" -#: part/models.py:3803 +#: part/models.py:3860 msgid "Is this parameter a checkbox?" msgstr "此參數是否為勾選框?" -#: part/models.py:3809 +#: part/models.py:3866 msgid "Valid choices for this parameter (comma-separated)" msgstr "此參數的有效選擇 (逗號分隔)" -#: part/models.py:3820 +#: part/models.py:3877 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3856 +#: part/models.py:3913 msgid "Part Parameter" msgstr "零件參數" -#: part/models.py:3882 +#: part/models.py:3939 msgid "Parameter cannot be modified - part is locked" msgstr "參數不能被修改 - 零件被鎖定" -#: part/models.py:3920 +#: part/models.py:3977 msgid "Invalid choice for parameter value" msgstr "無效的參數值選擇" -#: part/models.py:3971 +#: part/models.py:4028 msgid "Parent Part" msgstr "父零件" -#: part/models.py:3979 part/models.py:4087 part/models.py:4088 +#: part/models.py:4036 part/models.py:4144 part/models.py:4145 msgid "Parameter Template" msgstr "參數模板" -#: part/models.py:3985 +#: part/models.py:4042 msgid "Parameter Value" msgstr "參數值" -#: part/models.py:4035 +#: part/models.py:4092 msgid "Part Category Parameter Template" msgstr "零件類別參數模板" -#: part/models.py:4094 +#: part/models.py:4151 msgid "Default Value" msgstr "默認值" -#: part/models.py:4095 +#: part/models.py:4152 msgid "Default Parameter Value" msgstr "默認參數值" -#: part/models.py:4226 +#: part/models.py:4283 msgid "BOM item cannot be modified - assembly is locked" msgstr "物料清單項目不能被修改 - 裝配已鎖定" -#: part/models.py:4233 +#: part/models.py:4290 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "物料清單項目不能修改 - 變體裝配已鎖定" -#: part/models.py:4243 +#: part/models.py:4300 msgid "Select parent part" msgstr "選擇父零件" -#: part/models.py:4253 +#: part/models.py:4310 msgid "Sub part" msgstr "子零件" -#: part/models.py:4254 +#: part/models.py:4311 msgid "Select part to be used in BOM" msgstr "選擇要用於物料清單的零件" -#: part/models.py:4265 +#: part/models.py:4322 msgid "BOM quantity for this BOM item" msgstr "此物料清單項目的數量" -#: part/models.py:4271 +#: part/models.py:4328 msgid "This BOM item is optional" msgstr "此物料清單項目是可選的" -#: part/models.py:4277 +#: part/models.py:4334 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "這個物料清單項目是耗材 (它沒有在生產訂單中被追蹤)" -#: part/models.py:4284 +#: part/models.py:4341 msgid "Overage" msgstr "超量" -#: part/models.py:4285 +#: part/models.py:4342 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "估計生產物浪費量(絕對值或百分比)" -#: part/models.py:4292 +#: part/models.py:4349 msgid "BOM item reference" msgstr "物料清單項目引用" -#: part/models.py:4300 +#: part/models.py:4357 msgid "BOM item notes" msgstr "物料清單項目註釋" -#: part/models.py:4306 +#: part/models.py:4363 msgid "Checksum" msgstr "校驗和" -#: part/models.py:4307 +#: part/models.py:4364 msgid "BOM line checksum" msgstr "物料清單行校驗和" -#: part/models.py:4312 +#: part/models.py:4369 msgid "Validated" msgstr "已驗證" -#: part/models.py:4313 +#: part/models.py:4370 msgid "This BOM item has been validated" msgstr "此物料清單項目已驗證" -#: part/models.py:4318 +#: part/models.py:4375 msgid "Gets inherited" msgstr "獲取繼承的" -#: part/models.py:4319 +#: part/models.py:4376 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "此物料清單項目是由物料清單繼承的變體零件" -#: part/models.py:4325 +#: part/models.py:4382 msgid "Stock items for variant parts can be used for this BOM item" msgstr "變體零件的庫存項可以用於此物料清單項目" -#: part/models.py:4410 stock/models.py:770 +#: part/models.py:4467 stock/models.py:839 msgid "Quantity must be integer value for trackable parts" msgstr "可追蹤零件的數量必須是整數" -#: part/models.py:4420 part/models.py:4422 +#: part/models.py:4477 part/models.py:4479 msgid "Sub part must be specified" msgstr "必須指定子零件" -#: part/models.py:4567 +#: part/models.py:4624 msgid "BOM Item Substitute" msgstr "物料清單項目替代品" -#: part/models.py:4588 +#: part/models.py:4645 msgid "Substitute part cannot be the same as the master part" msgstr "替代品零件不能與主零件相同" -#: part/models.py:4601 +#: part/models.py:4658 msgid "Parent BOM item" msgstr "上級物料清單項目" -#: part/models.py:4609 +#: part/models.py:4666 msgid "Substitute part" msgstr "替代品零件" -#: part/models.py:4625 +#: part/models.py:4682 msgid "Part 1" msgstr "零件 1" -#: part/models.py:4633 +#: part/models.py:4690 msgid "Part 2" msgstr "零件2" -#: part/models.py:4634 +#: part/models.py:4691 msgid "Select Related Part" msgstr "選擇相關的零件" -#: part/models.py:4641 +#: part/models.py:4698 msgid "Note for this relationship" msgstr "" -#: part/models.py:4660 +#: part/models.py:4717 msgid "Part relationship cannot be created between a part and itself" msgstr "零件關係不能在零件和自身之間創建" -#: part/models.py:4665 +#: part/models.py:4722 msgid "Duplicate relationship already exists" msgstr "複製關係已經存在" @@ -6315,83 +6336,83 @@ msgstr "未指定操作" msgid "No matching action found" msgstr "未找到指定操作" -#: plugin/base/barcodes/api.py:210 +#: plugin/base/barcodes/api.py:211 msgid "No match found for barcode data" msgstr "未找到匹配條形碼數據" -#: plugin/base/barcodes/api.py:214 +#: plugin/base/barcodes/api.py:215 msgid "Match found for barcode data" msgstr "找到匹配條形碼數據" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 +#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "不支持模型" -#: plugin/base/barcodes/api.py:257 +#: plugin/base/barcodes/api.py:258 msgid "Model instance not found" msgstr "找不到模型實例" -#: plugin/base/barcodes/api.py:286 +#: plugin/base/barcodes/api.py:287 msgid "Barcode matches existing item" msgstr "條形碼匹配現有項目" -#: plugin/base/barcodes/api.py:427 +#: plugin/base/barcodes/api.py:428 msgid "No matching part data found" msgstr "沒有找到匹配的零件數據" -#: plugin/base/barcodes/api.py:443 +#: plugin/base/barcodes/api.py:444 msgid "No matching supplier parts found" msgstr "沒有找到匹配的供應商零件" -#: plugin/base/barcodes/api.py:446 +#: plugin/base/barcodes/api.py:447 msgid "Multiple matching supplier parts found" msgstr "找到多個匹配的供應商零件" -#: plugin/base/barcodes/api.py:459 plugin/base/barcodes/api.py:686 +#: plugin/base/barcodes/api.py:460 plugin/base/barcodes/api.py:687 msgid "No matching plugin found for barcode data" msgstr "沒有找到匹配條碼數據的插件" -#: plugin/base/barcodes/api.py:469 +#: plugin/base/barcodes/api.py:470 msgid "Matched supplier part" msgstr "匹配的供應商零件" -#: plugin/base/barcodes/api.py:537 +#: plugin/base/barcodes/api.py:538 msgid "Item has already been received" msgstr "項目已被接收" -#: plugin/base/barcodes/api.py:585 +#: plugin/base/barcodes/api.py:586 msgid "No plugin match for supplier barcode" msgstr "" -#: plugin/base/barcodes/api.py:634 +#: plugin/base/barcodes/api.py:635 msgid "Multiple matching line items found" msgstr "找到多個匹配的行項目" -#: plugin/base/barcodes/api.py:637 +#: plugin/base/barcodes/api.py:638 msgid "No matching line item found" msgstr "未找到匹配的行項目" -#: plugin/base/barcodes/api.py:683 +#: plugin/base/barcodes/api.py:684 msgid "No sales order provided" msgstr "未提供銷售訂單" -#: plugin/base/barcodes/api.py:692 +#: plugin/base/barcodes/api.py:693 msgid "Barcode does not match an existing stock item" msgstr "條形碼與現有的庫存項不匹配" -#: plugin/base/barcodes/api.py:708 +#: plugin/base/barcodes/api.py:709 msgid "Stock item does not match line item" msgstr "庫存項與行項目不匹配" -#: plugin/base/barcodes/api.py:738 +#: plugin/base/barcodes/api.py:739 msgid "Insufficient stock available" msgstr "可用庫存不足" -#: plugin/base/barcodes/api.py:751 +#: plugin/base/barcodes/api.py:752 msgid "Stock item allocated to sales order" msgstr "庫存項已分配到銷售訂單" -#: plugin/base/barcodes/api.py:754 +#: plugin/base/barcodes/api.py:755 msgid "Not enough information" msgstr "沒有足夠的信息" @@ -6834,7 +6855,7 @@ msgstr "邊框" msgid "Print a border around each label" msgstr "打印每個標籤的邊框" -#: plugin/builtin/labels/label_sheet.py:48 report/models.py:312 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:365 msgid "Landscape" msgstr "橫屏模式" @@ -7011,17 +7032,17 @@ msgstr "方法" msgid "No author found" msgstr "未找到作者" -#: plugin/registry.py:608 +#: plugin/registry.py:611 #, python-brace-format msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}" msgstr "插件 '{p}' 與當前 InvenTree 版本{v} 不兼容" -#: plugin/registry.py:611 +#: plugin/registry.py:614 #, python-brace-format msgid "Plugin requires at least version {v}" msgstr "插件所需最低版本 {v}" -#: plugin/registry.py:613 +#: plugin/registry.py:616 #, python-brace-format msgid "Plugin requires at most version {v}" msgstr "插件所需最高版本 {v}" @@ -7258,116 +7279,116 @@ msgstr "法律" msgid "Letter" msgstr "字母" -#: report/models.py:114 +#: report/models.py:117 msgid "Template file with this name already exists" msgstr "已存在具有此名稱的模板" -#: report/models.py:146 +#: report/models.py:199 msgid "Template name" msgstr "模版名稱" -#: report/models.py:152 +#: report/models.py:205 msgid "Template description" msgstr "模板説明" -#: report/models.py:158 +#: report/models.py:211 msgid "Revision number (auto-increments)" msgstr "修訂編號 (自動增量)" -#: report/models.py:164 +#: report/models.py:217 msgid "Attach to Model on Print" msgstr "打印時附加到模型" -#: report/models.py:166 +#: report/models.py:219 msgid "Save report output as an attachment against linked model instance when printing" msgstr "打印時將報告輸出保存為附件與鏈接模型實例" -#: report/models.py:207 +#: report/models.py:260 msgid "Filename Pattern" msgstr "文件名樣式" -#: report/models.py:208 +#: report/models.py:261 msgid "Pattern for generating filenames" msgstr "生成文件名模式" -#: report/models.py:213 +#: report/models.py:266 msgid "Template is enabled" msgstr "模板已啓用" -#: report/models.py:219 +#: report/models.py:272 msgid "Target model type for template" msgstr "模版的目標模型類型" -#: report/models.py:239 +#: report/models.py:292 msgid "Filters" msgstr "篩選器" -#: report/models.py:240 +#: report/models.py:293 msgid "Template query filters (comma-separated list of key=value pairs)" msgstr "模版查詢篩選器 (逗號分隔的鍵值對列表)" -#: report/models.py:299 report/models.py:503 +#: report/models.py:352 report/models.py:558 msgid "Template file" msgstr "模板包文件" -#: report/models.py:307 +#: report/models.py:360 msgid "Page size for PDF reports" msgstr "PDF 報告的頁面大小" -#: report/models.py:313 +#: report/models.py:366 msgid "Render report in landscape orientation" msgstr "橫向渲染報告" -#: report/models.py:425 +#: report/models.py:480 #, python-brace-format msgid "Report generated from template {self.name}" msgstr "" -#: report/models.py:450 +#: report/models.py:505 msgid "Error generating report" msgstr "" -#: report/models.py:509 +#: report/models.py:564 msgid "Width [mm]" msgstr "寬度 [mm]" -#: report/models.py:510 +#: report/models.py:565 msgid "Label width, specified in mm" msgstr "標籤寬度,以毫米為單位。" -#: report/models.py:516 +#: report/models.py:571 msgid "Height [mm]" msgstr "高度 [mm]" -#: report/models.py:517 +#: report/models.py:572 msgid "Label height, specified in mm" msgstr "標籤高度,以毫米為單位。" -#: report/models.py:624 +#: report/models.py:682 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:701 msgid "Snippet" msgstr "代碼片段" -#: report/models.py:644 +#: report/models.py:702 msgid "Report snippet file" msgstr "報告代碼片段文件" -#: report/models.py:651 +#: report/models.py:709 msgid "Snippet file description" msgstr "代碼片段文件描述" -#: report/models.py:669 +#: report/models.py:727 msgid "Asset" msgstr "資產" -#: report/models.py:670 +#: report/models.py:728 msgid "Report asset file" msgstr "報告資產文件" -#: report/models.py:677 +#: report/models.py:735 msgid "Asset file description" msgstr "資產文件描述" @@ -7449,7 +7470,7 @@ msgstr "總計" #: report/templates/report/inventree_return_order_report.html:25 #: report/templates/report/inventree_sales_order_shipment_report.html:45 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:928 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:997 #: stock/serializers.py:154 msgid "Serial Number" msgstr "序列號" @@ -7639,313 +7660,313 @@ msgstr "供應商零件有定義的包裝大小,但 use_pack_size 標誌未設 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "不能為不可跟蹤的零件提供序列號" -#: stock/models.py:70 +#: stock/models.py:71 msgid "Stock Location type" msgstr "庫存地點類型" -#: stock/models.py:71 +#: stock/models.py:72 msgid "Stock Location types" msgstr "庫存地點類型" -#: stock/models.py:97 +#: stock/models.py:98 msgid "Default icon for all locations that have no icon set (optional)" msgstr "為所有沒有圖標的位置設置默認圖標(可選)" -#: stock/models.py:137 stock/models.py:890 +#: stock/models.py:156 stock/models.py:959 msgid "Stock Location" msgstr "庫存地點" -#: stock/models.py:138 users/models.py:223 +#: stock/models.py:157 users/models.py:223 msgid "Stock Locations" msgstr "庫存地點" -#: stock/models.py:187 stock/models.py:1055 +#: stock/models.py:206 stock/models.py:1124 msgid "Owner" msgstr "所有者" -#: stock/models.py:188 stock/models.py:1056 +#: stock/models.py:207 stock/models.py:1125 msgid "Select Owner" msgstr "選擇所有者" -#: stock/models.py:196 +#: stock/models.py:215 msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "庫存項可能不直接位於結構庫存地點,但可能位於其子地點。" -#: stock/models.py:203 users/models.py:957 +#: stock/models.py:222 users/models.py:957 msgid "External" msgstr "外部" -#: stock/models.py:204 +#: stock/models.py:223 msgid "This is an external stock location" msgstr "這是一個外部庫存地點" -#: stock/models.py:210 +#: stock/models.py:229 msgid "Location type" msgstr "位置類型" -#: stock/models.py:214 +#: stock/models.py:233 msgid "Stock location type of this location" msgstr "該位置的庫存地點類型" -#: stock/models.py:286 +#: stock/models.py:305 msgid "You cannot make this stock location structural because some stock items are already located into it!" msgstr "您不能將此庫存地點設置為結構性,因為某些庫存項已經位於它!" -#: stock/models.py:494 +#: stock/models.py:563 msgid "Part must be specified" msgstr "" -#: stock/models.py:749 +#: stock/models.py:818 msgid "Stock items cannot be located into structural stock locations!" msgstr "庫存項不能存放在結構性庫存地點!" -#: stock/models.py:776 stock/serializers.py:507 +#: stock/models.py:845 stock/serializers.py:507 msgid "Stock item cannot be created for virtual parts" msgstr "無法為虛擬零件創建庫存項" -#: stock/models.py:793 +#: stock/models.py:862 #, python-brace-format msgid "Part type ('{self.supplier_part.part}') must be {self.part}" msgstr "零件類型 ('{self.supplier_part.part}') 必須為 {self.part}" -#: stock/models.py:803 stock/models.py:816 +#: stock/models.py:872 stock/models.py:885 msgid "Quantity must be 1 for item with a serial number" msgstr "有序列號的項目的數量必須是1" -#: stock/models.py:806 +#: stock/models.py:875 msgid "Serial number cannot be set if quantity greater than 1" msgstr "如果數量大於1,則不能設置序列號" -#: stock/models.py:828 +#: stock/models.py:897 msgid "Item cannot belong to itself" msgstr "項目不能屬於其自身" -#: stock/models.py:833 +#: stock/models.py:902 msgid "Item must have a build reference if is_building=True" msgstr "如果is_building=True,則項必須具有構建引用" -#: stock/models.py:846 +#: stock/models.py:915 msgid "Build reference does not point to the same part object" msgstr "構建引用未指向同一零件對象" -#: stock/models.py:860 +#: stock/models.py:929 msgid "Parent Stock Item" msgstr "母庫存項目" -#: stock/models.py:872 +#: stock/models.py:941 msgid "Base part" msgstr "基礎零件" -#: stock/models.py:882 +#: stock/models.py:951 msgid "Select a matching supplier part for this stock item" msgstr "為此庫存項目選擇匹配的供應商零件" -#: stock/models.py:894 +#: stock/models.py:963 msgid "Where is this stock item located?" msgstr "這個庫存物品在哪裏?" -#: stock/models.py:902 stock/serializers.py:1637 +#: stock/models.py:971 stock/serializers.py:1637 msgid "Packaging this stock item is stored in" msgstr "包裝此庫存物品存儲在" -#: stock/models.py:908 +#: stock/models.py:977 msgid "Installed In" msgstr "安裝於" -#: stock/models.py:913 +#: stock/models.py:982 msgid "Is this item installed in another item?" msgstr "此項目是否安裝在另一個項目中?" -#: stock/models.py:932 +#: stock/models.py:1001 msgid "Serial number for this item" msgstr "此項目的序列號" -#: stock/models.py:949 stock/serializers.py:1620 +#: stock/models.py:1018 stock/serializers.py:1620 msgid "Batch code for this stock item" msgstr "此庫存項的批號" -#: stock/models.py:954 +#: stock/models.py:1023 msgid "Stock Quantity" msgstr "庫存數量" -#: stock/models.py:964 +#: stock/models.py:1033 msgid "Source Build" msgstr "源代碼構建" -#: stock/models.py:967 +#: stock/models.py:1036 msgid "Build for this stock item" msgstr "為此庫存項目構建" -#: stock/models.py:974 +#: stock/models.py:1043 msgid "Consumed By" msgstr "消費者" -#: stock/models.py:977 +#: stock/models.py:1046 msgid "Build order which consumed this stock item" msgstr "構建消耗此庫存項的生產訂單" -#: stock/models.py:986 +#: stock/models.py:1055 msgid "Source Purchase Order" msgstr "採購訂單來源" -#: stock/models.py:990 +#: stock/models.py:1059 msgid "Purchase order for this stock item" msgstr "此庫存商品的採購訂單" -#: stock/models.py:996 +#: stock/models.py:1065 msgid "Destination Sales Order" msgstr "目的地銷售訂單" -#: stock/models.py:1007 +#: stock/models.py:1076 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "庫存物品的到期日。在此日期之後,庫存將被視為過期" -#: stock/models.py:1025 +#: stock/models.py:1094 msgid "Delete on deplete" msgstr "耗盡時刪除" -#: stock/models.py:1026 +#: stock/models.py:1095 msgid "Delete this Stock Item when stock is depleted" msgstr "當庫存耗盡時刪除此庫存項" -#: stock/models.py:1047 +#: stock/models.py:1116 msgid "Single unit purchase price at time of purchase" msgstr "購買時一個單位的價格" -#: stock/models.py:1078 +#: stock/models.py:1147 msgid "Converted to part" msgstr "轉換為零件" -#: stock/models.py:1642 +#: stock/models.py:1712 msgid "Part is not set as trackable" msgstr "零件未設置為可跟蹤" -#: stock/models.py:1648 +#: stock/models.py:1718 msgid "Quantity must be integer" msgstr "數量必須是整數" -#: stock/models.py:1656 +#: stock/models.py:1726 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "數量不得超過現有庫存量 ({self.quantity})" -#: stock/models.py:1662 +#: stock/models.py:1732 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1667 +#: stock/models.py:1737 msgid "Quantity does not match serial numbers" msgstr "數量不匹配序列號" -#: stock/models.py:1789 stock/models.py:2698 +#: stock/models.py:1859 stock/models.py:2768 msgid "Test template does not exist" msgstr "測試模板不存在" -#: stock/models.py:1807 +#: stock/models.py:1877 msgid "Stock item has been assigned to a sales order" msgstr "庫存項已分配到銷售訂單" -#: stock/models.py:1811 +#: stock/models.py:1881 msgid "Stock item is installed in another item" msgstr "庫存項已安裝在另一個項目中" -#: stock/models.py:1814 +#: stock/models.py:1884 msgid "Stock item contains other items" msgstr "庫存項包含其他項目" -#: stock/models.py:1817 +#: stock/models.py:1887 msgid "Stock item has been assigned to a customer" msgstr "庫存項已分配給客户" -#: stock/models.py:1820 stock/models.py:1994 +#: stock/models.py:1890 stock/models.py:2064 msgid "Stock item is currently in production" msgstr "庫存項目前正在生產" -#: stock/models.py:1823 +#: stock/models.py:1893 msgid "Serialized stock cannot be merged" msgstr "序列化的庫存不能合併" -#: stock/models.py:1830 stock/serializers.py:1513 +#: stock/models.py:1900 stock/serializers.py:1513 msgid "Duplicate stock items" msgstr "複製庫存項" -#: stock/models.py:1834 +#: stock/models.py:1904 msgid "Stock items must refer to the same part" msgstr "庫存項必須指相同零件" -#: stock/models.py:1842 +#: stock/models.py:1912 msgid "Stock items must refer to the same supplier part" msgstr "庫存項必須是同一供應商的零件" -#: stock/models.py:1847 +#: stock/models.py:1917 msgid "Stock status codes must match" msgstr "庫存狀態碼必須匹配" -#: stock/models.py:2117 +#: stock/models.py:2187 msgid "StockItem cannot be moved as it is not in stock" msgstr "庫存項不能移動,因為它沒有庫存" -#: stock/models.py:2599 +#: stock/models.py:2669 msgid "Stock Item Tracking" msgstr "庫存項跟蹤" -#: stock/models.py:2630 +#: stock/models.py:2700 msgid "Entry notes" msgstr "條目註釋" -#: stock/models.py:2670 +#: stock/models.py:2740 msgid "Stock Item Test Result" msgstr "庫存項測試結果" -#: stock/models.py:2701 +#: stock/models.py:2771 msgid "Value must be provided for this test" msgstr "必須為此測試提供值" -#: stock/models.py:2705 +#: stock/models.py:2775 msgid "Attachment must be uploaded for this test" msgstr "測試附件必須上傳" -#: stock/models.py:2710 +#: stock/models.py:2780 msgid "Invalid value for this test" msgstr "此測試的值無效" -#: stock/models.py:2734 +#: stock/models.py:2804 msgid "Test result" msgstr "測試結果" -#: stock/models.py:2741 +#: stock/models.py:2811 msgid "Test output value" msgstr "測試輸出值" -#: stock/models.py:2749 stock/serializers.py:250 +#: stock/models.py:2819 stock/serializers.py:250 msgid "Test result attachment" msgstr "測驗結果附件" -#: stock/models.py:2753 +#: stock/models.py:2823 msgid "Test notes" msgstr "測試備註" -#: stock/models.py:2761 +#: stock/models.py:2831 msgid "Test station" msgstr "測試站" -#: stock/models.py:2762 +#: stock/models.py:2832 msgid "The identifier of the test station where the test was performed" msgstr "進行測試的測試站的標識符" -#: stock/models.py:2768 +#: stock/models.py:2838 msgid "Started" msgstr "已開始" -#: stock/models.py:2769 +#: stock/models.py:2839 msgid "The timestamp of the test start" msgstr "測試開始的時間戳" -#: stock/models.py:2775 +#: stock/models.py:2845 msgid "Finished" msgstr "已完成" -#: stock/models.py:2776 +#: stock/models.py:2846 msgid "The timestamp of the test finish" msgstr "測試結束的時間戳" @@ -8401,6 +8422,7 @@ msgstr "有一些待處理的數據庫遷移需要注意" #: templates/email/new_order_assigned.html:9 #: templates/email/overdue_build_order.html:9 #: templates/email/overdue_purchase_order.html:9 +#: templates/email/overdue_return_order.html:9 #: templates/email/overdue_sales_order.html:9 #: templates/email/purchase_order_received.html:9 #: templates/email/return_order_received.html:9 @@ -8455,19 +8477,19 @@ msgstr "用户" msgid "Select which users are assigned to this group" msgstr "選擇分配給此組的用户" -#: users/admin.py:245 +#: users/admin.py:253 msgid "The following users are members of multiple groups" msgstr "以下用户是多個組的成員" -#: users/admin.py:279 +#: users/admin.py:287 msgid "Personal info" msgstr "個人信息" -#: users/admin.py:281 +#: users/admin.py:289 msgid "Permissions" msgstr "權限" -#: users/admin.py:284 +#: users/admin.py:292 msgid "Important dates" msgstr "重要日期" diff --git a/src/frontend/src/locales/ar/messages.po b/src/frontend/src/locales/ar/messages.po index ab1df2ee51..1a94d70f6d 100644 --- a/src/frontend/src/locales/ar/messages.po +++ b/src/frontend/src/locales/ar/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ar\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:34\n" "Last-Translator: \n" "Language-Team: Arabic\n" "Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/bg/messages.po b/src/frontend/src/locales/bg/messages.po index 765a8369e5..baaa6d8931 100644 --- a/src/frontend/src/locales/bg/messages.po +++ b/src/frontend/src/locales/bg/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: bg\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:34\n" "Last-Translator: \n" "Language-Team: Bulgarian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/cs/messages.po b/src/frontend/src/locales/cs/messages.po index 830cb775ba..7ffb4b4621 100644 --- a/src/frontend/src/locales/cs/messages.po +++ b/src/frontend/src/locales/cs/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: cs\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Czech\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" @@ -84,13 +84,13 @@ msgstr "Skenovat nebo zadávat data čárového kódu" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "Skenovat nebo zadávat data čárového kódu" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,8 +292,16 @@ msgid "Open spotlight" msgstr "Otevřít spotlight" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" -msgstr "Zrušit odběr součástky" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" +msgstr "" #: src/components/buttons/YesNoButton.tsx:16 msgid "Pass" @@ -549,12 +557,12 @@ msgstr "Zobrazit počet vrácených objednávek, které vám jsou přiděleny" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Začínáme" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Začínáme s InvenTree" @@ -606,7 +614,7 @@ msgstr "Žádné novinky" msgid "There are no unread news items" msgstr "Žádné nepřečtené novinky" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "Žádné nepřečtené novinky" msgid "Superuser" msgstr "Superuser" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "Personál" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Žádný název není definován" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Odstranit přidružený obrázek z této položky?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Chyba při načítání šablony" msgid "Error saving template" msgstr "Chyba při ukládání šablony" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "Nelze načíst šablonu ze serveru." - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "Nelze načíst šablonu ze serveru." + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Uložit a znovu načíst náhled" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Opravdu chcete uložit a znovu načíst náhled?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Pro zobrazení náhledu je třeba aktuální šablonu na serveru nahradit změněnou, což může poškodit štítek, je-li aktivně používán. Chcete pokračovat?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Uložit a znovu načíst" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Náhled aktualizován" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Náhled byl úspěšně aktualizován." @@ -867,15 +875,15 @@ msgstr "Náhled byl úspěšně aktualizován." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Aktualizovat náhled" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Použít aktuálně uloženou šablonu ze serveru" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Uložit aktuální šablonu a znovu načíst náhled" @@ -883,11 +891,11 @@ msgstr "Uložit aktuální šablonu a znovu načíst náhled" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Vyberte instanci pro náhled" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Chyba při načítání šablony" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "Ikony {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Data byla úspěšně importována" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Zavřít" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Zjistit více" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Neznámá chyba" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "Databáze" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Režim ladění" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Server běží v režimu ladění" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Režim Dockeru" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Server je nasazen pomocí dockeru" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Podpora pluginů" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Podpora zásuvných modulů povolena" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Podpora zásuvných modulů zakázána" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Stav serveru" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Zdravý" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Zjištěn problém" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "Nastavení e-mailu" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Email není nakonfigurován" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "Server běží v režimu ladění." -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "Restartovat server" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "Server vyžaduje restartování pro aplikaci změn." -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "Migrace databáze" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "Některé databáze čekají na migraci." -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "Výstrahy" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Notifikace" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "Výstrahy" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Nic nenalezeno..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Nastavení" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Nastavení účtu" @@ -1978,7 +1998,7 @@ msgstr "Skupiny" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Uživatelská nastavení" @@ -2036,7 +2056,7 @@ msgstr "výsledky" msgid "Remove search group" msgstr "Odstranit skupinu vyhledávání" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "Odstranit skupinu vyhledávání" msgid "Suppliers" msgstr "Dodavatelé" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Výrobci" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Zákazníci" @@ -2059,37 +2079,41 @@ msgstr "Zákazníci" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Zadejte hledaný text" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "Obnovit výsledky hledání" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Možnosti hledání" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Použít regulární výraz pro vyhledávání" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Hledat celá slova" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Použít regulární výraz pro vyhledávání" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Při hledání došlo k chybě" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Žádné výsledky" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Pro hledání nejsou k dispozici žádné výsledky" @@ -2374,7 +2398,7 @@ msgstr "Kategorie dílů" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Umístění skladu" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Skladová umístění" @@ -2693,7 +2717,7 @@ msgstr "Není skladem" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Sériové číslo" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Navštivte dokumentaci pro více informací o InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "O InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Informace o serveru" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "O této instanci Inventree" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Informace o licenci" @@ -3529,35 +3553,35 @@ msgstr "Přejít do Admin centra" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Dokumentace InvenTree API" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Příručka vývojáře" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Příručka pro vývojáře InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "Často kladené dotazy" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Často kladené dotazy" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "GitHub repozitář" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "Zdrojový kód InvenTree na GitHub" @@ -3565,8 +3589,8 @@ msgstr "Zdrojový kód InvenTree na GitHub" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Systémové Informace" @@ -3574,11 +3598,11 @@ msgstr "Systémové Informace" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "Licence pro závislosti softwaru InvenTree" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "O InvenTree.org" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "Štítek" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Chybný požadavek" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Neautorizováno" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Zakázáno" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Nenalezeno" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "Skladová položka již byla naskenována" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "Chyba API" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "Reporty inventury" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Čekající úkoly" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Naplánované úlohy" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Neúspěšné úkoly" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Štítky" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Reporty" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Převést skladové zásoby" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "Objednávka" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "Serializovat" msgid "Serialize stock" msgstr "Serializace skladu" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "Vrátit" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "Návrat od zákazníka" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "Přiřadit zákazníkovi" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "Přiřadit zákazníkovi" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Akce skladové položky" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "Zastaralé" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "Expirováno" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "Nepodařilo se načíst možnosti tabulky" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "Server vrátil nesprávný datový typ" @@ -7795,6 +7823,10 @@ msgstr "Server vrátil nesprávný datový typ" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/da/messages.po b/src/frontend/src/locales/da/messages.po index d14053634e..fa28235efb 100644 --- a/src/frontend/src/locales/da/messages.po +++ b/src/frontend/src/locales/da/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: da\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Danish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/de/messages.po b/src/frontend/src/locales/de/messages.po index d23ea2b594..9b231b3d00 100644 --- a/src/frontend/src/locales/de/messages.po +++ b/src/frontend/src/locales/de/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: de\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: German\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "Barcode-Daten scannen oder eingeben" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "Barcode-Daten scannen oder eingeben" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Spotlight öffnen" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Erste Schritte" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Erste Schritte mit InvenTree" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "Administrator" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "Mitarbeiter" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Kein Name festgelegt" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Verknüpftes Bild von diesem Teil entfernen?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Fehler beim Laden der Vorlage" msgid "Error saving template" msgstr "Fehler beim Speichern der Vorlage" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Vorschau speichern & neu laden" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Bist du sicher, dass du die Vorschau speichern & neu Laden möchtest?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Um die Vorschau zu erstellen, muss die Vorlage auf dem Server mit deiner geänderten Version ersetzt werden. Das kann zu Fehlern bei Etiketten führen, wenn sie aktiv genutzt werden. Möchtest du fortfahren?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Speichern & Neu laden" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Vorschau aktualisiert" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Die Vorlage wurde erfolgreich aktualisiert." @@ -867,15 +875,15 @@ msgstr "Die Vorlage wurde erfolgreich aktualisiert." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Vorschau neu laden" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Benutze die aktuell auf dem Server gespeicherte Vorlage" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Die aktuelle Vorlage speichern und die Vorschau neu laden" @@ -883,11 +891,11 @@ msgstr "Die aktuelle Vorlage speichern und die Vorschau neu laden" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Instanz für Vorschau auswählen" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Fehler bei Darstellung der Vorlage" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} Symbole" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Daten wurden erfolgreich importiert" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Schließen" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Mehr lesen" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Unbekannter Fehler" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Datenbank" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Debug Modus" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Der Server wird im Debug-Modus ausgeführt." -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Docker-Modus" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Server wird mit Docker bereitgestellt" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Plugin Unterstützung" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Plugin-Unterstützung aktiviert" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Plugin-Unterstützung deaktiviert" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Serverstatus" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Gesund" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Probleme erkannt" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Hintergrund-Prozess" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Hintergrund-Prozess läuft nicht" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "E-Mail Einstellungen" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "E-Mail-Einstellungen nicht konfiguriert" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Benachrichtigungen" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Nichts gefunden..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Einstellungen" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Kontoeinstellungen" @@ -1978,7 +1998,7 @@ msgstr "Gruppen" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "Ergebnisse" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Lieferanten" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Hersteller" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Kunden" @@ -2059,37 +2079,41 @@ msgstr "Kunden" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Suchtext eingeben" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Suchoptionen" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Regex Suche" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Volltextsuche" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Regex Suche" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Bei der Suchanfrage ist ein Fehler aufgetreten" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Keine Ergebnisse" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Keine Ergebnisse für Suchanfrage verfügbar" @@ -2374,7 +2398,7 @@ msgstr "Teil-Kategorien" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Lagerort" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Lagerorte" @@ -2693,7 +2717,7 @@ msgstr "Kein Bestand" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Seriennummer" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Besuche die Dokumentation, um mehr über InvenTree zu erfahren" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Über InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Server Informationen" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Lizenz Informationen" @@ -3529,35 +3553,35 @@ msgstr "Zum Administrationsbereich" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree API Dokumentation" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Entwicklerhandbuch" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree Entwicklerhandbuch" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Häufig gestellte Fragen" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Systeminformationen" @@ -3574,11 +3598,11 @@ msgstr "Systeminformationen" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "Bei bereits vorhandenen Lagerbestand einbuchen" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Ungültige Anfrage" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Nicht autorisiert" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Verweigert" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Nicht gefunden" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Hintergrund-Prozess läuft nicht" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "Der Hintergrund Taskmanager Service läuft nicht. Kontaktiere den Systemadministrator." @@ -5558,18 +5586,18 @@ msgstr "Der Hintergrund Taskmanager Service läuft nicht. Kontaktiere den System #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Anstehende Aufgaben" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Geplante Aufgaben" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Fehlgeschlagene Aufgaben" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Beschriftungen" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Berichte" @@ -6488,7 +6516,7 @@ msgstr "Herstellbar" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "Zugehörige Teile" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Bestand übertragen" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "Bestand bestellen" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Lagerartikel Aktionen" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "Filter hinzufügen" msgid "Clear Filters" msgstr "Filter zurücksetzen" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Keine Einträge gefunden" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "Der Server hat einen falschen Datentyp zurückgegeben" @@ -7795,6 +7823,10 @@ msgstr "Der Server hat einen falschen Datentyp zurückgegeben" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/el/messages.po b/src/frontend/src/locales/el/messages.po index cf29bb2589..728e29488a 100644 --- a/src/frontend/src/locales/el/messages.po +++ b/src/frontend/src/locales/el/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: el\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Greek\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Αφαίρεση της σχετικής εικόνας από αυτό το στοιχείο;" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Σφάλμα φόρτωσης προτύπου" msgid "Error saving template" msgstr "Σφάλμα αποθήκευσης προτύπου" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Είστε σίγουρος ότι θέλετε να αποθηκεύσετε και να επαναφορτώσετε την προεπισκόπηση;" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Για να εμφανίσετε την προεπισκόπηση το τρέχον πρότυπο πρέπει να αντικατασταθεί στο διακομιστή με τις τροποποιήσεις σας, οι οποίες μπορεί να αλλοιώσουν την ετικέτα αν είναι σε χρήση. Θέλετε να προχωρήσετε;" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Αποθήκευση και Επαναφόρτωση" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Προεπισκόπηση ενημερώθηκε" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Η προεπισκόπηση ενημερώθηκε με επιτυχία." @@ -867,15 +875,15 @@ msgstr "Η προεπισκόπηση ενημερώθηκε με επιτυχί #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Επαναφόρτωση προεπισκόπησης" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Χρήση του αποθηκευμένου προτύπου από το διακομιστή" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Αποθήκευση του τρέχοντος προτύπου και επαναφόρτωση της προεπισκόπησης" @@ -883,11 +891,11 @@ msgstr "Αποθήκευση του τρέχοντος προτύπου και #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Σφάλμα αποτύπωσης προτύπου" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/en/messages.po b/src/frontend/src/locales/en/messages.po index a292937703..5338bf491c 100644 --- a/src/frontend/src/locales/en/messages.po +++ b/src/frontend/src/locales/en/messages.po @@ -79,13 +79,13 @@ msgstr "Scan or enter barcode data" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -94,7 +94,7 @@ msgstr "Scan or enter barcode data" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -287,8 +287,16 @@ msgid "Open spotlight" msgstr "Open spotlight" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" -msgstr "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "Unsubscribe from notifications" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" +msgstr "Subscribe to notifications" #: src/components/buttons/YesNoButton.tsx:16 msgid "Pass" @@ -544,12 +552,12 @@ msgstr "Show the number of return orders which are assigned to you" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Getting Started" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Getting started with InvenTree" @@ -601,7 +609,7 @@ msgstr "No News" msgid "There are no unread news items" msgstr "There are no unread news items" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -609,22 +617,22 @@ msgstr "There are no unread news items" msgid "Superuser" msgstr "Superuser" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "Staff" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "Email: " - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "Email: " + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "No name defined" @@ -637,7 +645,7 @@ msgid "Remove the associated image from this item?" msgstr "Remove the associated image from this item?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -825,36 +833,36 @@ msgstr "Error loading template" msgid "Error saving template" msgstr "Error saving template" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "Could not load the template from the server." - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "Could not load the template from the server." + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Save & Reload Preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Are you sure you want to Save & Reload the preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Save & Reload" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Preview updated" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "The preview has been updated successfully." @@ -862,15 +870,15 @@ msgstr "The preview has been updated successfully." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Use the currently stored template from the server" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Save the current template and reload the preview" @@ -878,11 +886,11 @@ msgstr "Save the current template and reload the preview" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Select instance to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Error rendering template" @@ -1275,7 +1283,7 @@ msgid "{0} icons" msgstr "{0} icons" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1456,7 +1464,7 @@ msgstr "Data has been imported successfully" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Close" @@ -1561,7 +1569,7 @@ msgid "Read More" msgstr "Read More" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Unknown error" @@ -1734,102 +1742,114 @@ msgid "Database" msgstr "Database" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Debug Mode" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Server is running in debug mode" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Docker Mode" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Server is deployed using docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Plugin Support" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Plugin support enabled" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Plugin support disabled" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Server status" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Healthy" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Issues detected" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Background Worker" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "The Background worker process is not running." #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Email Settings" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "Email settings not configured." -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "The server is running in debug mode." -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "The background worker process is not running." -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "Email settings" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "Server Restart" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "The server requires a restart to apply changes." -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "Database Migrations" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "There are pending database migrations." -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "Alerts" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "Learn more about {code}" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Notifications" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "Alerts" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Nothing found..." @@ -1846,7 +1866,7 @@ msgid "Settings" msgstr "Settings" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Account Settings" @@ -1973,7 +1993,7 @@ msgstr "Groups" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "User Settings" @@ -2031,7 +2051,7 @@ msgstr "results" msgid "Remove search group" msgstr "Remove search group" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2039,13 +2059,13 @@ msgstr "Remove search group" msgid "Suppliers" msgstr "Suppliers" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Manufacturers" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Customers" @@ -2054,37 +2074,41 @@ msgstr "Customers" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Enter search text" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "Refresh search results" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Search Options" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Regex search" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Whole word search" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Regex search" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "Notes search" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "An error occurred during search query" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "No Results" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "No results available for search query" @@ -2369,7 +2393,7 @@ msgstr "Part Categories" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2392,7 +2416,7 @@ msgstr "Stock Location" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Stock Locations" @@ -2688,7 +2712,7 @@ msgstr "No stock" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2711,7 +2735,7 @@ msgstr "Serial Number" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3405,8 +3429,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Visit the documentation to learn more about InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "About InvenTree" @@ -3424,13 +3448,13 @@ msgid "Server Information" msgstr "Server Information" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "About this InvenTree instance" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "License Information" @@ -3524,35 +3548,35 @@ msgstr "Go to the Admin Center" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree API documentation" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Developer Manual" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree developer manual" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Frequently asked questions" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "GitHub Repository" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "InvenTree source code on GitHub" @@ -3560,8 +3584,8 @@ msgstr "InvenTree source code on GitHub" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "System Information" @@ -3569,11 +3593,11 @@ msgstr "System Information" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "Licenses for dependencies of the InvenTree software" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "About the InvenTree Project" @@ -3933,7 +3957,7 @@ msgstr "Store with already received stock" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4207,22 +4231,22 @@ msgid "Label" msgstr "Label" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Bad request" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Unauthorized" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Forbidden" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Not found" @@ -4763,7 +4787,7 @@ msgid "Item already scanned" msgstr "Item already scanned" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "API Error" @@ -5546,6 +5570,10 @@ msgid "Stocktake Reports" msgstr "Stocktake Reports" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Background worker not running" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "The background task manager service is not running. Contact your system administrator." @@ -5553,18 +5581,18 @@ msgstr "The background task manager service is not running. Contact your system #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Pending Tasks" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Scheduled Tasks" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Failed Tasks" @@ -5653,7 +5681,7 @@ msgid "Labels" msgstr "Labels" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Reporting" @@ -6483,7 +6511,7 @@ msgstr "Can Build" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6602,7 +6630,7 @@ msgstr "Related Parts" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6650,12 +6678,12 @@ msgstr "Transfer part stock" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "Order" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "Order Stock" @@ -7473,37 +7501,37 @@ msgstr "Serialize" msgid "Serialize stock" msgstr "Serialize stock" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "Return" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "Return from customer" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "Assign to Customer" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "Assign to a customer" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Stock Item Actions" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "Stale" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "Expired" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "Unavailable" @@ -7751,17 +7779,17 @@ msgstr "Add Filter" msgid "Clear Filters" msgstr "Clear Filters" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "No records found" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "Failed to load table options" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "Server returned incorrect data type" @@ -7790,6 +7818,10 @@ msgstr "Server returned incorrect data type" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "View details" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/es/messages.po b/src/frontend/src/locales/es/messages.po index b29758d18e..d8bad0cc61 100644 --- a/src/frontend/src/locales/es/messages.po +++ b/src/frontend/src/locales/es/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "Escanea o introduce datos de código de barras" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "Escanea o introduce datos de código de barras" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,8 +292,16 @@ msgid "Open spotlight" msgstr "Abrir spotlight" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" -msgstr "Desuscribirse de parte" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" +msgstr "" #: src/components/buttons/YesNoButton.tsx:16 msgid "Pass" @@ -549,12 +557,12 @@ msgstr "Mostrar el número de órdenes de devolución que se le asignaron" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Empezando" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Empezando con InvenTree" @@ -606,7 +614,7 @@ msgstr "Sin noticias" msgid "There are no unread news items" msgstr "No hay noticias sin leer" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "No hay noticias sin leer" msgid "Superuser" msgstr "Superusuario" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "Personal" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "Correo electrónico: " - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "Correo electrónico: " + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "No hay nombre definido" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "¿Eliminar la imagen asociada de este elemento?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Error al cargar la plantilla" msgid "Error saving template" msgstr "Error al guardar la plantilla" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "No se pudo cargar la plantilla del servidor." - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "No se pudo cargar la plantilla del servidor." + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Guardar y recargar vista previa" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "¿Está seguro que desea guardar y recargar la vista previa?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Para renderizar la vista previa la plantilla actual necesita ser reemplazada en el servidor con sus modificaciones que pueden romper la etiqueta si está en uso activo. ¿Quieres continuar?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Guardar y recargar" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Actualizar vista previa" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "La vista previa se ha actualizado correctamente." @@ -867,15 +875,15 @@ msgstr "La vista previa se ha actualizado correctamente." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Recargar vista previa" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Usar la plantilla actualmente almacenada del servidor" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Guardar la plantilla actual y recargar la vista previa" @@ -883,11 +891,11 @@ msgstr "Guardar la plantilla actual y recargar la vista previa" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Seleccione la instancia a previsualizar" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Error al renderizar plantilla" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "Iconos {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Los datos se han importado satisfactoriamente" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Cerrar" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Leer más" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Error desconocido" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Base de datos" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Modo de depuración" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "El servidor se está ejecutando en modo depuración" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Modo Docker" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "El servidor está desplegado usando docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Soporte para Plugins" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Soporte de plugins habilitado" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Soporte de complementos desactivado" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Estado del servidor" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Saludable" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Problemas detectados" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Trabajador en segundo plano" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Trabajador en segundo plano no ejecutado" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Configuración del correo electrónico" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Ajustes de correo no configurados" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "El proceso en segundo plano no se está ejecutando." -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "Reiniciar Servidor" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "El servidor requiere reiniciar para aplicar los cambios." -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "Migraciones de Bases de Datos" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "Hay migraciones pendientes de base de datos." -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "Alertas" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Notificaciones" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "Alertas" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "No se encontró nada..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Ajustes" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Ajustes de la cuenta" @@ -1978,7 +1998,7 @@ msgstr "Grupos" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Ajustes del usuario" @@ -2036,7 +2056,7 @@ msgstr "resultados" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Proveedores" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Fabricantes" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Clientes" @@ -2059,37 +2079,41 @@ msgstr "Clientes" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Introduce texto a buscar" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "Actualizar resultados de búsqueda" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Opciones de búsqueda" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Búsqueda por expresión regular" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Búsqueda por palabra" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Búsqueda por expresión regular" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Se ha producido un error durante la consulta de búsqueda" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Sin resultados" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "No hay resultados disponibles para consulta de búsqueda" @@ -2374,7 +2398,7 @@ msgstr "Categorías de Pieza" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Ubicación de existencias" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Ubicaciones de existencias" @@ -2693,7 +2717,7 @@ msgstr "Sin Stock" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Número de serie" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Visite la documentación para obtener más información sobre InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Acerca de InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Información del Servidor" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "Acerca de esta instancia de InvenTree" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Información de licencia" @@ -3529,35 +3553,35 @@ msgstr "Ir al Centro de Administración" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Documentación del API de InvenTree" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Manual del desarrollador" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Manual del desarrollador de InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Preguntas frecuentes" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "Repositorio de GitHub" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "Código fuente de InvenTree en GitHub" @@ -3565,8 +3589,8 @@ msgstr "Código fuente de InvenTree en GitHub" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Información del sistema" @@ -3574,11 +3598,11 @@ msgstr "Información del sistema" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "Licencias para dependencias del software de InvenTree" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "Acerca del proyecto InvenTree" @@ -3938,7 +3962,7 @@ msgstr "Guardar con cantidad ya recibida" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "Etiqueta" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Solicitud incorrecta" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "No autorizado" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Prohibido" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "No encontrado" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "Artículo ya escaneado" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "Error de API" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "Informes de inventario" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Trabajador en segundo plano no ejecutado" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Tareas pendientes" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Tareas Programadas" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Tareas fallidas" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Etiquetas" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Informes" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "Piezas Relacionadas" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "Orden" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "Serializar" msgid "Serialize stock" msgstr "Serializar stock" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "Devolver" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "Devolución del cliente" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "Asignar al Cliente" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "Asignar a cliente" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Acciones de artículos de existencias" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "Obsoleto" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "Expirado" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "No disponible" @@ -7756,17 +7784,17 @@ msgstr "Añadir filtro" msgid "Clear Filters" msgstr "Borrar filtros" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Ningún registro encontrado" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "El servidor devolvió un tipo de datos incorrecto" @@ -7795,6 +7823,10 @@ msgstr "El servidor devolvió un tipo de datos incorrecto" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/es_MX/messages.po b/src/frontend/src/locales/es_MX/messages.po index bafcbe90d1..5b0834a8f4 100644 --- a/src/frontend/src/locales/es_MX/messages.po +++ b/src/frontend/src/locales/es_MX/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: es_MX\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Spanish, Mexico\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "Escanea o introduce datos de código de barras" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "Escanea o introduce datos de código de barras" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "Mostrar el número de órdenes de devolución que se le asignaron" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Empezando" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Empezando con InvenTree" @@ -606,7 +614,7 @@ msgstr "Sin noticias" msgid "There are no unread news items" msgstr "No hay noticias sin leer" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "No hay noticias sin leer" msgid "Superuser" msgstr "Superusuario" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "Personal" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "No hay nombre definido" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "¿Eliminar imagen asociada al artículo?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Error al cargar la plantilla" msgid "Error saving template" msgstr "Error al guardar la plantilla" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "No se pudo cargar la plantilla del servidor." - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "No se pudo cargar la plantilla del servidor." + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Guardar y recargar vista previa" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "¿Está seguro que desea guardar y recargar la vista previa?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Para renderizar la vista previa la plantilla actual necesita ser reemplazada en el servidor con sus modificaciones que pueden romper la etiqueta si está en uso activo. ¿Quieres continuar?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Guardar y recargar" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Actualizar vista previa" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "La vista previa se ha actualizado correctamente." @@ -867,15 +875,15 @@ msgstr "La vista previa se ha actualizado correctamente." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Recargar vista previa" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Usar la plantilla actualmente almacenada del servidor" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Guardar la plantilla actual y recargar la vista previa" @@ -883,11 +891,11 @@ msgstr "Guardar la plantilla actual y recargar la vista previa" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Seleccione la instancia a previsualizar" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Error al renderizar plantilla" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "Iconos {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Los datos se han importado satisfactoriamente" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Cerrar" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Leer más" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Error desconocido" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Base de datos" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Modo de depuración" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "El servidor se está ejecutando en modo depuración" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Modo Docker" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "El servidor está desplegado usando Docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Soporte para complementos" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Soporte de complementos habilitado" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Soporte de complementos deshabilitado" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Estado del servidor" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Saludable" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Problemas detectados" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Trabajador en segundo plano" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Trabajador en segundo plano no está ejecutándose" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Ajustes del correo electrónico" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Ajustes de correo no configurados" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Notificaciones" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "No se encontró nada..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Ajustes" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Ajustes de la cuenta" @@ -1978,7 +1998,7 @@ msgstr "Grupos" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Ajustes del usuario" @@ -2018,7 +2038,7 @@ msgstr "No tienes notificaciones sin leer." #: src/components/nav/SearchDrawer.tsx:105 msgid "No Overview Available" -msgstr "No Hay Un Resumen Disponible" +msgstr "No hay resumen disponible" #: src/components/nav/SearchDrawer.tsx:106 msgid "No overview available for this model type" @@ -2036,7 +2056,7 @@ msgstr "resultados" msgid "Remove search group" msgstr "Eliminar grupo de búsqueda" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "Eliminar grupo de búsqueda" msgid "Suppliers" msgstr "Proveedores" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Fabricantes" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Clientes" @@ -2059,37 +2079,41 @@ msgstr "Clientes" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Introduce texto a buscar" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "Actualizar resultados de búsqueda" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Opciones de búsqueda" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Búsqueda por expresión regular" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Búsqueda de palabras completas" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Búsqueda por expresión regular" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Se ha producido un error durante la consulta de búsqueda" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Sin Resultados" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "No hay resultados disponibles para consulta de búsqueda" @@ -2374,7 +2398,7 @@ msgstr "Categorías de Pieza" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Ubicación de almacén" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Ubicaciones de almacén" @@ -2693,7 +2717,7 @@ msgstr "Sin existencias" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Número de serie" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Visite la documentación para obtener más información sobre InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Acerca de InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Información del Servidor" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "Acerca de esta instancia de InvenTree" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Información de licencia" @@ -3529,35 +3553,35 @@ msgstr "Ir al Centro de Administración" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Documentación del API de InvenTree" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Manual del desarrollador" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Manual del desarrollador de InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Preguntas frecuentes" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "Repositorio de GitHub" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "Código fuente de InvenTree en GitHub" @@ -3565,8 +3589,8 @@ msgstr "Código fuente de InvenTree en GitHub" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Información del sistema" @@ -3574,11 +3598,11 @@ msgstr "Información del sistema" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "Licencias para dependencias del software de InvenTree" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "Acerca del proyecto InvenTree" @@ -3938,7 +3962,7 @@ msgstr "Guardar con cantidad ya recibida" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "Etiqueta" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Solicitud incorrecta" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "No autorizado" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Prohibido" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "No encontrado" @@ -4262,7 +4286,7 @@ msgstr "Error interno del servidor" #: src/functions/auth.tsx:117 #: src/functions/auth.tsx:276 msgid "Already logged in" -msgstr "Ya estás conectado" +msgstr "Ya iniciaste sesión" #: src/functions/auth.tsx:118 #: src/functions/auth.tsx:277 @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "Error de API" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "Informes de inventario" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Trabajador en segundo plano no está ejecutándose" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "El servicio de administración de tareas en segundo plano no se está ejecutando. Póngase en contacto con el administrador del sistema." @@ -5558,18 +5586,18 @@ msgstr "El servicio de administración de tareas en segundo plano no se está ej #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Tareas pendientes" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Tareas Programadas" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Tareas fallidas" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Etiquetas" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Informes" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "Pedido" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "Serializar" msgid "Serialize stock" msgstr "Serializar stock" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "Devolver" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "Devolución del cliente" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "Asignar al Cliente" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "Asignar a cliente" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "Obsoleto" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "Expirado" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "No disponible" @@ -7756,17 +7784,17 @@ msgstr "Añadir filtro" msgid "Clear Filters" msgstr "Borrar Filtros" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Ningún registro encontrado" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "Error al cargar las opciones de tabla" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "El servidor devolvió un tipo de datos incorrecto" @@ -7795,6 +7823,10 @@ msgstr "El servidor devolvió un tipo de datos incorrecto" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/et/messages.po b/src/frontend/src/locales/et/messages.po index c2f710f763..8f880615cc 100644 --- a/src/frontend/src/locales/et/messages.po +++ b/src/frontend/src/locales/et/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: et\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Estonian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Ava esiletõstmine" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Alustamine" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Arendage InvenTree'ga" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Nime pole määratud" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Kas soovite eemaldada seotud pildi sellest üksusest?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Malli laadimise viga" msgid "Error saving template" msgstr "Malli salvestamise viga" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Salvesta ja laadi eelvaade uuesti" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Kas olete kindel, et soovite salvestada ja eelvaate uuesti laadida?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Eelvaate loomiseks on vaja serveris asendada praegune mall teie muudatustega, mis võib põhjustada sildi rikkumise, kui seda kasutatakse aktiivselt. Kas soovite jätkata?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Salvesta ja laadi uuesti" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Eelvaade uuendatud" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Eelvaade on edukalt uuendatud." @@ -867,15 +875,15 @@ msgstr "Eelvaade on edukalt uuendatud." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Laadi eelvaade uuesti" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Kasuta serveris praegu salvestatud malli" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Salvesta praegune mall ja laadi eelvaade uuesti" @@ -883,11 +891,11 @@ msgstr "Salvesta praegune mall ja laadi eelvaade uuesti" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Vali eelvaate jaoks eksemplar" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Malli renderdamisel tekkis viga" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} ikoonid" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Andmed on edukalt importitud" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Sulge" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Loe edasi" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Tundmatu viga" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Andmebaas" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Server töötab silumisrežiimis" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Server on paigaldatud kasutades dockerit" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Serveri staatus" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Taustatöötaja ei tööta" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "E-kirja seaded pole konfigureeritud" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Teavitused" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Seaded" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Konto seaded" @@ -1978,7 +1998,7 @@ msgstr "Rühmad" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Kasutaja seaded" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Tarnijaid" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Kliendid" @@ -2059,37 +2079,41 @@ msgstr "Kliendid" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Lisage otsitav tekst" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Otsingu valikud" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Regex otsing" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Regex otsing" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Otsingu päringu ajal ilmnes viga" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Otsingu päringu jaoks tulemusi pole saadaval" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Seerianumber" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Külastage dokumentatsiooni, et rohkem teada saada InvenTree kohta" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "InvenTree kohta" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Serveri informatsioon" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree dokumentatsioon" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Arendaja käsiraamat" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree arendaja käsiraamat" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "KKK" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Korduma kippuvad küsimused" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "Pood juba saadud varudega" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Vigane päring" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Luba saamata jäänud" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Keelatud" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Ei leitud" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Taustatöötaja ei tööta" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "Taustal töötava ülesandehalduri teenus ei tööta. Võtke ühendust oma süsteemi administraatoriga." @@ -5558,18 +5586,18 @@ msgstr "Taustal töötava ülesandehalduri teenus ei tööta. Võtke ühendust o #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Sildid" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Aruanded" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "Lisa filter" msgid "Clear Filters" msgstr "Tühjenda filtrid" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Kirjeid ei leitud" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "Server tagastas ebatäpse andmeühiku" @@ -7795,6 +7823,10 @@ msgstr "Server tagastas ebatäpse andmeühiku" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/fa/messages.po b/src/frontend/src/locales/fa/messages.po index 77444fedb3..0dfa542587 100644 --- a/src/frontend/src/locales/fa/messages.po +++ b/src/frontend/src/locales/fa/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: fa\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Persian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/fi/messages.po b/src/frontend/src/locales/fi/messages.po index a7a92e4cc0..78b98598d1 100644 --- a/src/frontend/src/locales/fi/messages.po +++ b/src/frontend/src/locales/fi/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: fi\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Finnish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/fr/messages.po b/src/frontend/src/locales/fr/messages.po index e7aa5a67d8..d9451e9655 100644 --- a/src/frontend/src/locales/fr/messages.po +++ b/src/frontend/src/locales/fr/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Ouvrir Spotlight" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Premiers Pas" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Démarrer avec InvenTree" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "Super-utilisateur" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Aucun nom défini" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Supprimer l'image associée de cet élément ?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Erreur lors du chargement du modèle" msgid "Error saving template" msgstr "Erreur lors de l'enregistrement du modèle" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "Impossible de charger le modèle depuis le serveur." - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "Impossible de charger le modèle depuis le serveur." + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Enregistrer & Recharger l'aperçu" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Êtes-vous sûr de vouloir enregistrer et recharger l'aperçu ?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Pour afficher l'aperçu, le modèle actuel doit être remplacé sur le serveur par vos modifications qui peuvent casser l'étiquette s'il est en cours d'utilisation. Voulez-vous continuer ?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Sauvegarder et Actualiser" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Aperçu mis à jour" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "L'aperçu a été mis à jour avec succès." @@ -867,15 +875,15 @@ msgstr "L'aperçu a été mis à jour avec succès." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Recharger l’aperçu" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Utiliser le modèle actuellement stocké sur le serveur" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Enregistrer le modèle actuel et recharger l'aperçu" @@ -883,11 +891,11 @@ msgstr "Enregistrer le modèle actuel et recharger l'aperçu" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Sélectionner l'instance à prévisualiser" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Erreur de rendu du modèle" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "Icônes {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Les données on était correctement importés" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Fermer" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "En Savoir Plus" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Erreur inconnue" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Base de données" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Mode Debug" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Le serveur s'execute en mode debug" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Mode Docker" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Le serveur est déployé avec docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Support du Plugin" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Prise en charge des plugins activée" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Prise en charge des plugins désactivée" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Status du serveur" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "En bonne santé" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Problème détecté" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Travail en arrière-plan" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Travail en arrière-plan à l'arrêt" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Configuration email" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Configuration mail non effectuée" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Notifications" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Aucun résultat trouvé..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Paramètres" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Paramètres du compte" @@ -1978,7 +1998,7 @@ msgstr "Groupes" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Paramètres de l'utilisateur" @@ -2036,7 +2056,7 @@ msgstr "résultats" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Fournisseurs" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Clients" @@ -2059,37 +2079,41 @@ msgstr "Clients" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Entrez un texte à rechercher" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Options de recherche" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Recherche par regex" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Recherche par mot entier" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Recherche par regex" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Une erreur s'est produite lors de la recherche" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Aucun résultat" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Aucun résultat disponible pour la requête" @@ -2374,7 +2398,7 @@ msgstr "Catégories de composants" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Emplacement du stock" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Emplacements de stock" @@ -2693,7 +2717,7 @@ msgstr "Aucun stock" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Numéro de série" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Consultez la documentation pour en savoir plus sur InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "À propos d'InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Information serveur" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Informations de licence" @@ -3529,35 +3553,35 @@ msgstr "Accéder au centre d'administration" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Documentation de l'API d'InvenTree" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Manuel du développeur" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Manuel du développeur InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Foire aux questions" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Informations système" @@ -3574,11 +3598,11 @@ msgstr "Informations système" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "Stocker avec le stock déjà reçu" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Requête invalide" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Non autorisé" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Accès interdit" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Elément non trouvé" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Travail en arrière-plan à l'arrêt" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Tâches en attente" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Tâches planifiées" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Tâches en échec" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Étiquettes" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Rapports" @@ -6488,7 +6516,7 @@ msgstr "Peut être construit" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "Pièces associées" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Transférer le stock de pièces" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "Commande" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "Sérialiser" msgid "Serialize stock" msgstr "Sérialiser le stock" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "Retour" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "Retour du client" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Actions de l'article de stock" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "Ajouter un filtre" msgid "Clear Filters" msgstr "Effacer filtres" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Pas d'enregistrement trouvé" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "Le serveur à retourner un type de donnée incorrect" @@ -7795,6 +7823,10 @@ msgstr "Le serveur à retourner un type de donnée incorrect" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/he/messages.po b/src/frontend/src/locales/he/messages.po index 983d84bc55..d75e1c40d3 100644 --- a/src/frontend/src/locales/he/messages.po +++ b/src/frontend/src/locales/he/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: he\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "פתח זרקור" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "תחילת עבודה" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "תחילת העבודה עם InvenTree" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "לא הוגדר שם" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "האם להסיר את התמונה המשויכת מפריט זה?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "שגיאה בטעינת התבנית" msgid "Error saving template" msgstr "שגיאה בשמירת התבנית" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "שמור וטען מחדש תצוגה מקדימה" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "האם את/ה בטוח/ה שברצונך לשמור ולטעון מחדש את התצוגה המקדימה? " -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "כדי להציג את התצוגה המקדימה יש להחליף את התבנית הנוכחית בשרת בתבנית שעברה שינויים אשר עלולים לשבור את התווית אם היא בשימוש פעיל. האם את/ה רוצה להמשיך?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "שמור וטען מחדש" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "התצוגה המקדימה עודכנה" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "התצוגה המקדימה עודכנה בהצלחה." @@ -867,15 +875,15 @@ msgstr "התצוגה המקדימה עודכנה בהצלחה." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "טען מחדש תצוגה מקדימה" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "השתמש בתבנית המאוחסנת כעת מהשרת" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "שמור את התבנית הנוכחית וטען מחדש את התצוגה המקדימה" @@ -883,11 +891,11 @@ msgstr "שמור את התבנית הנוכחית וטען מחדש את התצ #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "בחר מופע לתצוגה מקדימה" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "שגיאה בעיבוד התבנית" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} סמלים" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "הנתונים יובאו בהצלחה" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "סגור" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "קרא עוד" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "שגיאה לא ידועה" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "מסד נתונים" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "מצב ניפוי באגים" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "השרת פועל במצב ניפוי באגים" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "מצב דוקר" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "השרת נפרס באמצעות docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "תמיכה בפלאגין" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "תמיכה בפלאגין מופעלת" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "תמיכת פלאגין מושבתת" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "מצב השרת" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "בריא" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "זוהו בעיות" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "באקגראונד-וורקר" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "באקגראונד-וורקר לא פעיל" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "הגדרות אימייל" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "לא הוגדרוו הגדרות אימייל" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "התראות" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "לא נמצא כלום..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "הגדרות" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "קבוצות" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "תוצאות" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "הזן טקסט חיפוש" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "אפשרויות חיפוש" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "חיפוש רגולרי" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "חיפוש מילה שלמה" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "חיפוש רגולרי" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "אירעה שגיאה במהלך שאילתת החיפוש" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "אין תוצאות זמינות עבור שאילתת חיפוש" @@ -2374,7 +2398,7 @@ msgstr "קטגוריית פריטים" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "מיקום מלאי" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "מיקומי מלאי" @@ -2693,7 +2717,7 @@ msgstr "אין מלאי" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "מספר סידורי" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "בקר בתיעוד כדי ללמוד עוד על InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "אודות InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "מידע שרת" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "מידע על רישיון" @@ -3529,35 +3553,35 @@ msgstr "עבור אל מרכז הניהול" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "תיעוד InvenTree API" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "מדריך למפתחים" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "מדריך למפתחים של InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "שאלות נפוצות" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "שאלות נפוצות" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "מידע מערכת" @@ -3574,11 +3598,11 @@ msgstr "מידע מערכת" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "באקגראונד-וורקר לא פעיל" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/hi/messages.po b/src/frontend/src/locales/hi/messages.po index 4dfd7ba7e2..5480defca8 100644 --- a/src/frontend/src/locales/hi/messages.po +++ b/src/frontend/src/locales/hi/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: hi\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Hindi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/hu/messages.po b/src/frontend/src/locales/hu/messages.po index d04e0d92c2..59e25097a9 100644 --- a/src/frontend/src/locales/hu/messages.po +++ b/src/frontend/src/locales/hu/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: hu\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Zseblámpa megnyitása" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Első lépések" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Első lépések az InvenTree-vel" @@ -606,7 +614,7 @@ msgstr "Nincsenek új hírek" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Nincs név megadva" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Tételhez rendelt kép eltávolítása?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Hiba a sablon betöltése közben" msgid "Error saving template" msgstr "Hiba a sablon mentése közben" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Mentés és előnézet frissítése" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Biztosan elmented és frissíted az előnézetet?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Az aktuális sablon előnézetének megjelenítéséhez a módosításaid el kell küldeni a szervernek ami elronthajta a címkét ha éppen használják. Biztosan akarod?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Mentés és újratöltés" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Előnézet frissítve" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "A előnézet sikeresen frissitve." @@ -867,15 +875,15 @@ msgstr "A előnézet sikeresen frissitve." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Előnézet frissítése" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "A szerveren tárolt sablon használata" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Aktuális sablon elmentése és előnézet frissítése" @@ -883,11 +891,11 @@ msgstr "Aktuális sablon elmentése és előnézet frissítése" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Az előnézet példány kiválasztása" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Hiba a sablon megjelenítésekor" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} db" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Bezárás" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Tudj meg többet" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Ismeretlen hiba" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Adatbázis" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Debug mód" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "A szerver debug módban van" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Docker mód" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "A szerver dockerben fut" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Plugin támogatás" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Plugin támogatás engedélyezve" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Plugin támogatás letiltva" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Szerver állapot" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Egészséges" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Problémák észlelhetők" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Háttér munkavégző" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Háttér munkavégző nem fut" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Email beállítások" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Email beállítások hiányoznak" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Értesítések" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Beállítások" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Fiókbeállítások" @@ -1978,7 +1998,7 @@ msgstr "Csoportok" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "eredmények" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Beszállítók" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Gyártók" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Vevők" @@ -2059,37 +2079,41 @@ msgstr "Vevők" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Írd be a keresett szöveget" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Keresési opciók" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Regex keresés" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Teljes szó keresés" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Regex keresés" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Hiba történt a keresés közben" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Nincs találat" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Nincs találat a keresésre" @@ -2374,7 +2398,7 @@ msgstr "Alkatrész kategóriák" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Készlet hely" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Készlethelyek" @@ -2693,7 +2717,7 @@ msgstr "Nincs készlet" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Sorozatszám" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "InvenTree névjegy" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Szerver Információk" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Licensz információk" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree API dokumentáció" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Fejlesztői dokumentáció" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree fejlesztői dokumentáció" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "GYIK" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Gyakran ismételt kérdések" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "GitHub repó" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Rendszerinformáció" @@ -3574,11 +3598,11 @@ msgstr "Rendszerinformáció" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "Tárolás a már megérkezett készlettel" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Hibás kérés" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Jogosulatlan" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Tiltott" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Nem található" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Háttér munkavégző nem fut" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Folyamatban lévő feladatok" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Ütemezett Feladatok" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Hibás feladatok" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Címkék" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Riportolás" @@ -6488,7 +6516,7 @@ msgstr "Gyártható" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "Kapcsolódó alkatrészek" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Készlet áthelyezése" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "Készlet rendelés" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "Szűrő hozzáadása" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Nincs találat" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "A szerver hibás adattípust küldött vissza" @@ -7795,6 +7823,10 @@ msgstr "A szerver hibás adattípust küldött vissza" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/id/messages.po b/src/frontend/src/locales/id/messages.po index bd572074b4..414cac8b9d 100644 --- a/src/frontend/src/locales/id/messages.po +++ b/src/frontend/src/locales/id/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Simpan & Muat Ulang Pranala" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Simpan & Muat ulang" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Tinjau telah diperbarui" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Memuat Ulang Pratinjau" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} icon" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Tutup" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "Basis Data" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "Pengaturan Surel" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Notifikasi" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Pengaturan" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Pelanggan" @@ -2059,37 +2079,41 @@ msgstr "Pelanggan" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Tidak ada hasil" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "Tidak ada persediaan" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Nomor Seri" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Tentang InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Informasi Server" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Informasi Lisensi" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Informasi sistem" @@ -3574,11 +3598,11 @@ msgstr "Informasi sistem" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/it/messages.po b/src/frontend/src/locales/it/messages.po index 64585075a0..aaaa5b6523 100644 --- a/src/frontend/src/locales/it/messages.po +++ b/src/frontend/src/locales/it/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: it\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Italian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Accendi torcia" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "Mostra il numero di ordini di reso assegnati a te" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Per Iniziare" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Per iniziare con InvenTree" @@ -606,7 +614,7 @@ msgstr "Nessuna notizia" msgid "There are no unread news items" msgstr "Non ci sono notizie non lette" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "Non ci sono notizie non lette" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Nessun nome definito" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Rimuovi l'immagine associata all'articolo?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Errore durante il caricamento del modello" msgid "Error saving template" msgstr "Errore durante il salvataggio del modello" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "Impossibile caricare il modello dal server." - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "Impossibile caricare il modello dal server." + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Salva & ricarica l'anteprima" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Sei sicuro di voler salvare e ricaricare l'anteprima?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Per visualizzare l'anteprima, il modello attuale deve essere sostituito sul server con le modifiche apportate, il che potrebbe interrompere l'etichetta se è in uso attivo. Volete procedere?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Salva & ricarica" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Anteprima aggiornata" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "L' anteprima è stata aggiornata con successo." @@ -867,15 +875,15 @@ msgstr "L' anteprima è stata aggiornata con successo." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Ricarica anteprima" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Utilizzare il modello attualmente memorizzato dal server" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Salva il modello corrente e ricarica l'anteprima" @@ -883,11 +891,11 @@ msgstr "Salva il modello corrente e ricarica l'anteprima" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Selezionare l'istanza da visualizzare in anteprima" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Errore nel visualizzare il modello" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} icone" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "I dati sono stati importati correttamente" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Chiudi" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Approfondisci" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Errore sconosciuto" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Database" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Modalità Debug" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Server in esecuzione in modalità debug" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Modalità Docker" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Il server è distribuito utilizzando docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Supporto Plugin" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Supporto Plugin Abilitato" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Supporto plugin disabilitato" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Stato del Server" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Sano" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Problemi rilevati" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Processo in background" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Processo in background non in esecuzione" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Impostazioni e-mail" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Impostazioni dell'email non configurate" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Notifiche" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Nessun risultato..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Impostazioni" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "Gruppi" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Impostazioni Utente" @@ -2036,7 +2056,7 @@ msgstr "risultati" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Inserisci il testo della ricerca" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "Aggiorna Risultati di Ricerca" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Opzioni di Ricerca" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Ricerca con regex" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Ricerca parole intere" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Ricerca con regex" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Si è verificato un errore durante la ricerca" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Nessun risultato disponibile per la ricerca" @@ -2374,7 +2398,7 @@ msgstr "Categorie Articolo" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Ubicazione articolo" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Ubicazioni articolo" @@ -2693,7 +2717,7 @@ msgstr "Nessuno stock" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Numero Seriale" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Visita la documentazione per saperne di più su InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Informazioni su InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Informazioni sul Server" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Informazioni sulla licenza" @@ -3529,35 +3553,35 @@ msgstr "Vai al centro di amministrazione" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Documentazione API di InvenTree" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Manuale Dello Sviluppatore" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Manuale dello sviluppatore di InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Domande frequenti" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "Repository GitHub" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "Codice sorgente InvenTree su GitHub" @@ -3565,8 +3589,8 @@ msgstr "Codice sorgente InvenTree su GitHub" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Informazioni Sistema" @@ -3574,11 +3598,11 @@ msgstr "Informazioni Sistema" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "Licenze per dipendenze del software InvenTree" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "A proposito del progetto InvenTree" @@ -3938,7 +3962,7 @@ msgstr "Memorizza con stock già ricevuto" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "Report Inventario" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Processo in background non in esecuzione" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "Ordine" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "Serializza" msgid "Serialize stock" msgstr "Serializza magazzino" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "Reso" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "Reso dal cliente" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "Obsoleto" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "Scaduto" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "Non disponibile" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/ja/messages.po b/src/frontend/src/locales/ja/messages.po index 42dbd3a76a..b3e3cbb615 100644 --- a/src/frontend/src/locales/ja/messages.po +++ b/src/frontend/src/locales/ja/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ja\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -84,13 +84,13 @@ msgstr "バーコードデータをスキャンまたは入力" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "バーコードデータをスキャンまたは入力" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "スポットライトを開く" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "割り当てられた返品指示の数を表示" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "はじめましょう" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "InvenTreeの利用開始" @@ -606,7 +614,7 @@ msgstr "ニュースなし" msgid "There are no unread news items" msgstr "未読のニュースはありません" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "未読のニュースはありません" msgid "Superuser" msgstr "スーパーユーザー" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "スタッフ" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "名称未定" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "このアイテムから関連画像を削除しますか?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "テンプレートの読み込みエラー" msgid "Error saving template" msgstr "テンプレートの保存エラー" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "サーバーからテンプレートをロードできませんでした。" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "サーバーからテンプレートをロードできませんでした。" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "保存と再読み込みプレビュー" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "プレビューを保存して再読み込みしますか?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "プレビューを表示するには、現在のテンプレートをサーバー上であなたの修正に置き換える必要があります。続行しますか?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "保存と再読み込み" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "プレビューの更新完了" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "プレビューは正常に更新されました。" @@ -867,15 +875,15 @@ msgstr "プレビューは正常に更新されました。" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "プレビューを再読み込み" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "サーバーから現在保存されているテンプレートを使用" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "現在のテンプレートを保存し、プレビューを再読み込みします" @@ -883,11 +891,11 @@ msgstr "現在のテンプレートを保存し、プレビューを再読み込 #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "プレビューするインスタンスを選択" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "テンプレート描画エラー" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} アイコン" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "データは正常にインポートされました" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "閉じる" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "続きを読む" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "不明なエラー" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "データベース" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "デバッグモード" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "サーバーはデバッグモードで動作しています。" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "ドッカーモード" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "サーバーは docker を使ってデプロイします。" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "プラグインのサポート" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "プラグイン対応" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "プラグインサポート無効" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "サーバーの状態" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "健康" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "検出された問題" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "バックグラウンドワーカー" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "バックグラウンドワーカーが実行されていません" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "メール設定" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "電子メール設定の未設定" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "通知" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "見つかりませんでした…" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "設定" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "アカウント設定" @@ -1978,7 +1998,7 @@ msgstr "グループ" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "ユーザー設定" @@ -2036,7 +2056,7 @@ msgstr "結果" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "仕入先" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "メーカー" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "顧客" @@ -2059,37 +2079,41 @@ msgstr "顧客" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "検索文字列の入力" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "検索結果の更新" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "検索設定" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "正規表現検索" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "全単語検索" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "正規表現検索" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "検索中にエラーが発生しました" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "該当なし" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "検索結果がありません" @@ -2374,7 +2398,7 @@ msgstr "パーツカテゴリ" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "在庫場所" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "在庫場所" @@ -2693,7 +2717,7 @@ msgstr "在庫なし" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "シリアル番号" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "InvenTreeの詳細については、ドキュメントをご覧ください。" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "InvenTree について" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "サーバー情報" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "このInvenTreeインスタンスについて" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "有効にすると、プラグインを削除しているときに、ライセンス情報を含むデータベース (ロールデータを除く) からこのプラグインに関連するすべてのデータを削除します。この場合、ライセンスは自動的に非アクティブ化されません" @@ -3529,35 +3553,35 @@ msgstr "管理センターへ" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree API ドキュメント" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "開発者マニュアル" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree開発者マニュアル" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "よくある質問" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "FAQ" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "GitHubリポジトリ" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "InvenTreeのソースコードはGitHubにあります。" @@ -3565,8 +3589,8 @@ msgstr "InvenTreeのソースコードはGitHubにあります。" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "システム情報" @@ -3574,11 +3598,11 @@ msgstr "システム情報" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "InvenTreeソフトウェアの依存関係のライセンス" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "InvenTreeプロジェクトについて" @@ -3938,7 +3962,7 @@ msgstr "入荷済みの在庫がある店舗" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "ラベル" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "間違ったリクエスト" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "無許可" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "禁じられた" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "みつかりません" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "スキャン済みアイテム" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "APIエラー" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "ストックテイク・レポート" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "バックグラウンドワーカーが実行されていません" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "バックグラウンドタスクマネージャーサービスが実行されていません。システム管理者に連絡してください。" @@ -5558,18 +5586,18 @@ msgstr "バックグラウンドタスクマネージャーサービスが実行 #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "保留タスク" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "スケジュールされたタスク" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "失敗したタスク" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "ラベル" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "レポート" @@ -6488,7 +6516,7 @@ msgstr "ビルド" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "関連部品" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "部品在庫の移動" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "注文" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "注文在庫" @@ -7478,37 +7506,37 @@ msgstr "シリアライズ" msgid "Serialize stock" msgstr "在庫のシリアル化" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "戻る" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "顧客からの返品" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "顧客に割り当てる" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "顧客に割り当てる" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "在庫品アクション" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "期限失効" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "期限切れ" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "利用不可" @@ -7756,17 +7784,17 @@ msgstr "フィルタを追加" msgid "Clear Filters" msgstr "絞り込み条件を解除する" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "記録が見つかりません" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "テーブル・オプションの読み込みに失敗しました" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "サーバーが不正なデータ型を返しました。" @@ -7795,6 +7823,10 @@ msgstr "サーバーが不正なデータ型を返しました。" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/ko/messages.po b/src/frontend/src/locales/ko/messages.po index 53858b9b07..b94fffe539 100644 --- a/src/frontend/src/locales/ko/messages.po +++ b/src/frontend/src/locales/ko/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/lt/messages.po b/src/frontend/src/locales/lt/messages.po index cb308b0e13..94465c8995 100644 --- a/src/frontend/src/locales/lt/messages.po +++ b/src/frontend/src/locales/lt/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: lt\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Lithuanian\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && (n%100>19 || n%100<11) ? 0 : (n%10>=2 && n%10<=9) && (n%100>19 || n%100<11) ? 1 : n%1!=0 ? 2: 3);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/lv/messages.po b/src/frontend/src/locales/lv/messages.po index 8af8ecbf27..6b3993f0cf 100644 --- a/src/frontend/src/locales/lv/messages.po +++ b/src/frontend/src/locales/lv/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: lv\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Latvian\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/nl/messages.po b/src/frontend/src/locales/nl/messages.po index 6a0a3ead43..48de168bec 100644 --- a/src/frontend/src/locales/nl/messages.po +++ b/src/frontend/src/locales/nl/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: nl\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "Scan of voer de barcode in" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "Scan of voer de barcode in" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Open spotlight" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "Toon het aantal retour orders die aan u zijn toegewezen" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Aan de slag!" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Aan de slag met InvenTree" @@ -606,7 +614,7 @@ msgstr "Geen nieuwsberichten" msgid "There are no unread news items" msgstr "Er zijn geen ongelezen nieuwsartikelen" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "Er zijn geen ongelezen nieuwsartikelen" msgid "Superuser" msgstr "Administrator " -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "Medewerkers" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Geen naam gedefinieerd" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "De bijbehorende afbeelding van dit item verwijderen?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Fout bij laden sjabloon" msgid "Error saving template" msgstr "Fout tijdens opslaan van template" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "Kan template niet laden van de server." - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "Kan template niet laden van de server." + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Opslaan & Herladen Voorbeeld" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Weet u zeker dat u wilt opslaan en het voorbeeld opnieuw wilt laden?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Om het voorbeeld weer te geven moet de huidige template worden vervangen door de server door de wijzigingen die het label kunnen breken als het in actief gebruik is. Wilt u doorgaan?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Opslaan en herladen" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Voorbeeld bijgewerkt" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Het voorbeeld is met succes bijgewerkt." @@ -867,15 +875,15 @@ msgstr "Het voorbeeld is met succes bijgewerkt." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Herlaad voorbeeld" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Gebruik de momenteel opgeslagen template van de server" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Sla de huidige sjabloon op en herlaad de preview" @@ -883,11 +891,11 @@ msgstr "Sla de huidige sjabloon op en herlaad de preview" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Selecteer instantie om een voorbeeld te bekijken" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Fout bij laden sjabloon" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} pictogrammen" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "De gegevens zijn met succes geïmporteerd" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Sluiten" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Meer informatie" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Onbekende fout." @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Database" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Foutopsporing modus" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Server wordt uitgevoerd in debug mode" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Docker mode" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Server is geïmplementeerd via docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Plug-in ondersteuning" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Plug-in ondersteuning ingeschakeld" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Plug-in ondersteuning uitgeschakeld" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Status server" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Gezond" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Problemen gedetecteerd" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Achterliggende applicatie draait niet" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "E-mail instellingen" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "E-mailinstellingen zijn niet geconfigureerd" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Meldingen" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Niets gevonden..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Instellingen" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Account instellingen" @@ -1978,7 +1998,7 @@ msgstr "Groepen" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Gebruiker instellingen" @@ -2036,7 +2056,7 @@ msgstr "Resultaat" msgid "Remove search group" msgstr "Verwijder zoekgroep" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "Verwijder zoekgroep" msgid "Suppliers" msgstr "Leveranciers" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Fabrikant" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Klanten" @@ -2059,37 +2079,41 @@ msgstr "Klanten" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Geef zoektekst op" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "Ververs zoekresultaten" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Zoek opties" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Regex zoeken" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Volledige woord zoeken" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Regex zoeken" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Er is een fout opgetreden tijdens de zoekopdracht" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Geen resultaten" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Geen resultaten beschikbaar voor zoekopdracht" @@ -2374,7 +2398,7 @@ msgstr "Onderdeel categorieën" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Voorraad locatie" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Voorraad locatie" @@ -2693,7 +2717,7 @@ msgstr "Geen voorraad" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Serienummer" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Bezoek de documentatie om meer te weten te komen over InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Over InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Server informatie" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "Over deze InvenTree instantie" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Licentie informatie" @@ -3529,35 +3553,35 @@ msgstr "Ga naar het beheergedeelte" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree API documentatie" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Handleiding voor ontwikkelaar" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree ontwikkelaar handleiding" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "Veelgestelde vragen (FAQ)" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Veelgestelde vragen" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "GitHub repository" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "InvenTree broncode op GitHub" @@ -3565,8 +3589,8 @@ msgstr "InvenTree broncode op GitHub" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Systeem informatie" @@ -3574,11 +3598,11 @@ msgstr "Systeem informatie" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "Licenties voor afhankelijkheden van de InvenTree software" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "Over het InvenTree project" @@ -3938,7 +3962,7 @@ msgstr "Winkel met reeds ontvangen voorraad" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "Label" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Slecht verzoek" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Niet-geautoriseerd" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Niet toegestaan." #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Niet gevonden" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "Item is al gescand" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "API fout" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "Voorraadcontrole rapporten" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Achterliggende applicatie draait niet" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "De achtergrondtaak beheerservice wordt niet uitgevoerd. Neem contact op met de systeembeheerder." @@ -5558,18 +5586,18 @@ msgstr "De achtergrondtaak beheerservice wordt niet uitgevoerd. Neem contact op #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Openstaande taken" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Geplande taken" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Mislukte taken" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Labels" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Rapporteren" @@ -6488,7 +6516,7 @@ msgstr "Kan bouwen" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "Gerelateerde onderdelen" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Voorraad van onderdeel verplaatsen" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "Order" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "Voorraad bestelling" @@ -7478,37 +7506,37 @@ msgstr "Serienummer geven" msgid "Serialize stock" msgstr "Voorraad serie nummer geven" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "Terug" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "Geretourneerd door klant" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "Toewijzen aan klant" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "Toewijzen aan klant" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Voorraad artikel acties" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "Verouderd" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "Verlopen" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "Niet beschikbaar" @@ -7756,17 +7784,17 @@ msgstr "Filter toevoegen" msgid "Clear Filters" msgstr "Filters wissen" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Geen gegevens gevonden" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "Laden van tabelopties mislukt" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "Server heeft onjuist gegevenstype teruggestuurd" @@ -7795,6 +7823,10 @@ msgstr "Server heeft onjuist gegevenstype teruggestuurd" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/no/messages.po b/src/frontend/src/locales/no/messages.po index 780ee89f21..1072600e72 100644 --- a/src/frontend/src/locales/no/messages.po +++ b/src/frontend/src/locales/no/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: no\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Komme i gang" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Komme i gang med InvenTree" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Les mer" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Ukjent feil" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Database" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Feilsøkingsmodus" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Serveren kjører i debug-modus" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Docker-modus" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Serveren er distribuert ved hjelp av docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Støtte for utvidelser" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Utvidelsesstøtte aktivert" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Utvidelsesstøtte deaktivert" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Serverstatus" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Frisk" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Problemer oppdaget" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Bakgrunnsarbeider" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Bakgrunnsarbeider kjører ikke" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "E-Post-Innstillinger" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "E-postinnstillinger ikke konfigurert" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Varlser" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Innstillinger" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Kontoinnstillinger" @@ -1978,7 +1998,7 @@ msgstr "Grupper" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "resultater" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Leverandører" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Produsenter" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Kunder" @@ -2059,37 +2079,41 @@ msgstr "Kunder" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Skriv inn søketekst" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Alternativer for søk" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Regex-søk" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Helordsøk" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Regex-søk" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Det oppstod en feil under søk" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Ingen resultater tilgjengelig for søk" @@ -2374,7 +2398,7 @@ msgstr "Delkategorier" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Lagerplassering" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Lagerplasseringer" @@ -2693,7 +2717,7 @@ msgstr "Ingen lagerbeholdning" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Serienummer" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Om InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree-API-dokumentasjon" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Utviklermanual" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree utviklermanual" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Ofte stilte spørsmål" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Systeminformasjon" @@ -3574,11 +3598,11 @@ msgstr "Systeminformasjon" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Ugyldig forespørsel" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Uautorisert" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Forbudt" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Ikke funnet" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Bakgrunnsarbeider kjører ikke" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Ventende oppgaver" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Planlagte oppgaver" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Mislykkede oppgaver" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Etiketter" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Rapportering" @@ -6488,7 +6516,7 @@ msgstr "Kan Produsere" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "Relaterte Deler" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Overfør delbeholdning" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "Legg til filter" msgid "Clear Filters" msgstr "Fjern filtre" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Ingen poster funnet" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "Serveren returnerte feil datatype" @@ -7795,6 +7823,10 @@ msgstr "Serveren returnerte feil datatype" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/pl/messages.po b/src/frontend/src/locales/pl/messages.po index f18ebe5159..4f1836684f 100644 --- a/src/frontend/src/locales/pl/messages.po +++ b/src/frontend/src/locales/pl/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: pl\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Polish\n" "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Pierwsze Kroki" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Pierwsze kroki z InvenTree" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Nie zdefiniowano nazwy" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Usunąć powiązany obrazek z tego elementu?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Błąd ładowania szablonu" msgid "Error saving template" msgstr "Wystąpił błąd zapisywania szablonu" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Zapisz i odśwież podgląd" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Czy na pewno chcesz zapisać i przeładować podgląd?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Zapisz i odśwież" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Podgląd zaktualizowany" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Podgląd został pomyślnie zaktualizowany." @@ -867,15 +875,15 @@ msgstr "Podgląd został pomyślnie zaktualizowany." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Odśwież podgląd" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Wybierz instancję do podglądu" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Błąd renderowania szablonu" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} ikon(y)" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Dane zostały zaimportowane" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Zamknij" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Czytaj dalej" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Nieznany błąd" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Baza danych" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Tryb Debugowania" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Serwer jest uruchomiony w trybie debugowania" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Tryb Dockera" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Serwer jest wdrożony z użyciem Dockera" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Obsługa wtyczek" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Obsługa wtyczek włączona" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Obsługa wtyczek wyłączona" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Status serwera" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Zdrowy" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Wykryto problemy" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Proces w tle" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Proces w tle nie jest uruchomiony" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Ustawienia poczty e-mail" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Ustawienia e-mail nie zostały skonfigurowane" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Powiadomienia" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Nic nie znaleziono..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Ustawienia" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Ustawienia konta" @@ -1978,7 +1998,7 @@ msgstr "Grupy" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "wyniki" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Wpisz frazę, którą chcesz wyszukać" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Opcje wyszukiwania" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Wyszukiwanie Regex" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Wyszukiwanie całych słów" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Wyszukiwanie Regex" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Wystąpił błąd podczas wyszukiwania" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Brak dostępnych wyników wyszukiwania" @@ -2374,7 +2398,7 @@ msgstr "Kategorie części" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Lokacja stanu" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Lokacje stanów" @@ -2693,7 +2717,7 @@ msgstr "Brak w magazynie" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Numer seryjny" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Odwiedź dokumentację, aby dowiedzieć się więcej o InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "O InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Informacje o serwerze" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Informacje o licencji" @@ -3529,35 +3553,35 @@ msgstr "Przejdź do Centrum Administratora" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Dokumentacja API InvenTree" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Podręcznik programisty" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Podręcznik programisty InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Najczęściej zadawane pytania" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Informacje o systemie" @@ -3574,11 +3598,11 @@ msgstr "Informacje o systemie" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Proces w tle nie jest uruchomiony" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Oczekujce zadania" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Zaplanowane zadania" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Zadania zakończone błędem" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Etykiety" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Raportowanie" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/pt/messages.po b/src/frontend/src/locales/pt/messages.po index dd4936f3fe..0ed0d84279 100644 --- a/src/frontend/src/locales/pt/messages.po +++ b/src/frontend/src/locales/pt/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: pt\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Portuguese\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Abrir Destaques" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Guia de Introdução" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Primeiros passos com InvenTree" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Nenhum nome definido" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Remover a imagem associada a este item?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,37 +838,37 @@ msgstr "Erro ao carregar modelo" msgid "Error saving template" msgstr "Erro a guardar o modelo" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Guardar & Recarregar a pré-visualização" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Tem certeza de que deseja Guardar & Recarregar a pré-visualização?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Para ver esta pré-visualização o modelo atual precisa ser substituído no servidor com as suas modificações, o que pode fazer com que \n" "o modelo atual deixe de funcionar. Deseja continuar?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Guardar & Recarregar" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Pré-visualização atualizada" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "A pré-visualização foi atualizada com sucesso." @@ -868,15 +876,15 @@ msgstr "A pré-visualização foi atualizada com sucesso." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Atualizar pré-visualização" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Utilizar o modelo guardado atualmente no servidor" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Salvar o modelo atual e recarregar a visualização" @@ -884,11 +892,11 @@ msgstr "Salvar o modelo atual e recarregar a visualização" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Selecionar instância para pré-visualização" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Erro ao renderizar modelo" @@ -1281,7 +1289,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1462,7 +1470,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1567,7 +1575,7 @@ msgid "Read More" msgstr "Mais informações" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Erro desconhecido" @@ -1740,102 +1748,114 @@ msgid "Database" msgstr "Base de dados" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Modo de depuração" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "O servidor está em execução no modo de depuração" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Modo Docker" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Servidor implementado usando o Docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Suporte a Extensões" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Suporte a extensões habilitado" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Suporte de extensão desativado" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Estado do Servidor" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Saudável" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Problemas detectados" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Trabalhador em segundo plano" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Trabalhador de fundo não está em execução" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Configurações de Email" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Configurações de e-mail não configuradas" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Notificações" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Nada encontrado..." @@ -1852,7 +1872,7 @@ msgid "Settings" msgstr "Configurações" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Definições da Conta" @@ -1979,7 +1999,7 @@ msgstr "Grupos" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2037,7 +2057,7 @@ msgstr "resultados" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2045,13 +2065,13 @@ msgstr "" msgid "Suppliers" msgstr "Fornecedores" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Fabricantes" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Clientes" @@ -2060,37 +2080,41 @@ msgstr "Clientes" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Introduzir texto de pesquisa" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Opções de Pesquisa" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Busca por Regex" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Pesquisar palavras inteiras" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Busca por Regex" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Ocorreu um erro durante a busca" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Sem Resultados" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Não há resultados disponíveis para a pesquisa" @@ -2375,7 +2399,7 @@ msgstr "Categorias da Peça" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2398,7 +2422,7 @@ msgstr "Localização de Stock" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Localizações de Stock" @@ -2694,7 +2718,7 @@ msgstr "Sem Estoque" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2717,7 +2741,7 @@ msgstr "Número de Série" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3411,8 +3435,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Visite a documentação para saber mais sobre o InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Sobre o InvenTree" @@ -3430,13 +3454,13 @@ msgid "Server Information" msgstr "Informações do Servidor" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Informações de licença" @@ -3530,35 +3554,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Documentação da API InvenTree" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Manual do Desenvolvedor" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Manual do Desenvolvedor InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "Perguntas Frequentes" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Perguntas Frequentes" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3566,8 +3590,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Informação do Sistema" @@ -3575,11 +3599,11 @@ msgstr "Informação do Sistema" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3939,7 +3963,7 @@ msgstr "Armazenar com estoque já recebido" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4213,22 +4237,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Pedido inválido" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Não autorizado" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Proibido" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Não encontrado" @@ -4769,7 +4793,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5552,6 +5576,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Trabalhador de fundo não está em execução" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "O serviço de gerenciador de tarefas em segundo plano não está em execução. Entre em contato com o administrador do sistema." @@ -5559,18 +5587,18 @@ msgstr "O serviço de gerenciador de tarefas em segundo plano não está em exec #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Tarefas Pendentes" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Tarefas Agendadas" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Tarefas que falharam" @@ -5659,7 +5687,7 @@ msgid "Labels" msgstr "Etiquetas" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Relatórios" @@ -6489,7 +6517,7 @@ msgstr "Pode Produzir" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6608,7 +6636,7 @@ msgstr "Peças Relacionadas" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6656,12 +6684,12 @@ msgstr "Transferir peça do estoque" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "Encomendar Estoque" @@ -7479,37 +7507,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Ações do Item do Estoque" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7757,17 +7785,17 @@ msgstr "Adicionar Filtro" msgid "Clear Filters" msgstr "Limpar Filtros" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Nenhum registo encontrado" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "O servidor retornou dados incorretos" @@ -7796,6 +7824,10 @@ msgstr "O servidor retornou dados incorretos" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/pt_BR/messages.po b/src/frontend/src/locales/pt_BR/messages.po index 5cef31d7b1..0002ae1577 100644 --- a/src/frontend/src/locales/pt_BR/messages.po +++ b/src/frontend/src/locales/pt_BR/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: pt\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "Digitalizar ou inserir dados com código de barras" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "Digitalizar ou inserir dados com código de barras" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Abrir spotlight" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Primeiros passos" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Primeiros passos com InvenTree" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "Superusuário" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Sem nome definido" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Remover imagem associada a este item?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Erro ao carregar template" msgid "Error saving template" msgstr "Erro ao salvar o template" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "Não foi possível carregar o template do servidor." - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "Não foi possível carregar o template do servidor." + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Salvar e Recarregar Prévia" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Tem certeza de que deseja salvar e recarregar a visualização?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Para renderizar a prévia, o modelo atual necessita ser substituído, no servidor, com suas modificações, que podem levar a quebra da etiqueta caso a etiqueta esteja sendo utilizada de forma ativa. Você deseja prosseguir?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Salvar & Recarregar" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Visualizar Atualização" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "A pré-visualização foi atualizado com sucesso." @@ -867,15 +875,15 @@ msgstr "A pré-visualização foi atualizado com sucesso." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Recarregar pré-visualização" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Use o modelo armazenado atualmente no servidor" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Salvar o modelo atual e recarregar a pré-visualização" @@ -883,11 +891,11 @@ msgstr "Salvar o modelo atual e recarregar a pré-visualização" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Selecione a instância para pré-visualizar" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Erro ao carregar template" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "Ícones {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Dados importados com sucesso" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Fechar" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Leia Mais" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Erro desconhecido" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Banco de Dados" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Modo de depuração" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Servidor está em execução em modo de depuração" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Modo Docker" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "O servidor está implantado usando o docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Suporte a Plugins" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Suporte a plugin habilitado" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Suporte a plugin desabilitado" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Estado do servidor" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Saudável" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Problemas detectados" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Trabalhador em Segundo Plano" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Trabalhador em segundo plano não está funcionando" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Configurações de Email" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Email não configurado" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Notificações" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Nada encontrado..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Configurações" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Configurações de Conta" @@ -1978,7 +1998,7 @@ msgstr "Grupos" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Configurações de usuário" @@ -2036,7 +2056,7 @@ msgstr "resultados" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Fornecedores" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Fabricantes" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Clientes" @@ -2059,37 +2079,41 @@ msgstr "Clientes" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Digite o texto de pesquisa" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Opções de pesquisa" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Busca por Regex" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Pesquisa de palavras inteira" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Busca por Regex" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Ocorreu um erro durante a pesquisa" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Nenhum Resultado" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Não há resultados disponíveis para a pesquisa" @@ -2374,7 +2398,7 @@ msgstr "Categorias de Peça" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Localização do estoque" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Locais de estoque" @@ -2693,7 +2717,7 @@ msgstr "Sem Estoque" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Número de Série" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Visite a documentação para aprender mais sobre o InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Sobre o InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Informações do Servidor" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Informações de Licença" @@ -3529,35 +3553,35 @@ msgstr "Ir para o Centro de Administração" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Documentação de API do InvenTree" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Manual do Desenvolvedor" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Manual do desenvolvedor InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Perguntas Frequentes" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Informação do Sistema" @@ -3574,11 +3598,11 @@ msgstr "Informação do Sistema" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "Armazenar com estoque já recebido" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Requisição inválida" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Não autorizado" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Proibido" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Não encontrado" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Trabalhador em segundo plano não está funcionando" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "O serviço de gerenciador de tarefas em segundo plano não está em execução. Entre em contato com o administrador do sistema." @@ -5558,18 +5586,18 @@ msgstr "O serviço de gerenciador de tarefas em segundo plano não está em exec #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Tarefas Pendentes" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Tarefas Agendadas" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Tarefas com Falhas" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Etiquetas" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Relatórios" @@ -6488,7 +6516,7 @@ msgstr "Pode Produzir" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "Peças Relacionadas" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Transferir estoque de peça" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "Pedir estoque" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Ações de Estoque" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "Adicionar Filtro" msgid "Clear Filters" msgstr "Limpar Filtros" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Nenhum registro encontrado" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "O servidor retornou um tipo de dado incorreto" @@ -7795,6 +7823,10 @@ msgstr "O servidor retornou um tipo de dado incorreto" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/ro/messages.po b/src/frontend/src/locales/ro/messages.po index e229d84694..793c3e090d 100644 --- a/src/frontend/src/locales/ro/messages.po +++ b/src/frontend/src/locales/ro/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ro\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Romanian\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100>0 && n%100<20)) ? 1 : 2);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/ru/messages.po b/src/frontend/src/locales/ru/messages.po index 68c9c65463..66526707f4 100644 --- a/src/frontend/src/locales/ru/messages.po +++ b/src/frontend/src/locales/ru/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ru\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Russian\n" "Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Открыть всплывающее окно" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "Количество назначенных на вас заказов #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Начать работу" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Начало работы с InvenTree" @@ -606,7 +614,7 @@ msgstr "Новостей нет" msgid "There are no unread news items" msgstr "Нет непрочитанных новостей" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "Нет непрочитанных новостей" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Имя не определено" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Удалить связанное изображение?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Ошибка загрузки шаблона" msgid "Error saving template" msgstr "Ошибка при сохранении шаблона" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "Не удалось загрузить шаблон с сервера" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "Не удалось загрузить шаблон с сервера" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Сохранить и перезагрузить предпросмотр" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Вы уверены, что хотите сохранить и перезагрузить предпросмотр?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Для отображения предварительного просмотра текущий шаблон должен быть заменен на ваши модификации, которые могут нарушить метку, если она используется в активном режиме. Вы хотите продолжить?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Сохранить и перезагрузить" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Предпросмотр обновлен" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Предварительный просмотр успешно обновлен." @@ -867,15 +875,15 @@ msgstr "Предварительный просмотр успешно обно #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Перезагрузить предварительный просмотр" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Использовать текущий шаблон с сервера" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Сохранить текущий шаблон и обновить предпросмотр" @@ -883,11 +891,11 @@ msgstr "Сохранить текущий шаблон и обновить пр #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Выберите экземпляр для просмотра" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Ошибка отображения шаблона" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} иконок" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Данные успешно импортированы" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Закрыть" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Подробнее" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Неизвестная ошибка" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "База данных" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Режим отладки" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Сервер запущен в режиме отладки" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Режим Docker" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Сервер развернут с помощью docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Поддержка плагина" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Поддержка плагинов включена" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Поддержка плагинов отключена" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Состояние сервера" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Исправен" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Обнаруженные проблемы" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Фоновый процесс" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Фоновый процесс не запущен" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Настройки Email" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Параметры электронной почты не настроены" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Уведомления" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Ничего не найдено..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Настройки" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Настройки учетной записи" @@ -1978,7 +1998,7 @@ msgstr "Группы" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Пользовательские настройки" @@ -2036,7 +2056,7 @@ msgstr "результаты" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Введите слова для поиска" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "Обновить результаты поиска" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Параметры поиска" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Поиск по выражению" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Поиск полного слова" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Поиск по выражению" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Произошла ошибка во время поиска запроса" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Нет доступных результатов для поискового запроса" @@ -2374,7 +2398,7 @@ msgstr "Категории деталей" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Место хранения" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Места хранения" @@ -2693,7 +2717,7 @@ msgstr "Нет склада" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Серийный номер" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Посетите документацию, чтобы узнать больше о InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "О программе InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Информация о сервере" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Информация о лицензии" @@ -3529,35 +3553,35 @@ msgstr "Перейти в админ центр" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Документация по API InvenTree" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Руководство разработчика" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Инструкция по разработке InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Часто задаваемые вопросы" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Информация о системе" @@ -3574,11 +3598,11 @@ msgstr "Информация о системе" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "О проекте InvenTree" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Фоновый процесс не запущен" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "Служба управления фоновыми задачами не запущена. Обратитесь к системному администратору." @@ -5558,18 +5586,18 @@ msgstr "Служба управления фоновыми задачами не #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Ожидающие задачи" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Запланированные задания" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Невыполненные Задачи" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Метки" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Отчеты" @@ -6488,7 +6516,7 @@ msgstr "Можно произвести" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "Вернуть запас от клиента" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "Передать запас клиенту" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "Передать запас клиенту" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "Залежалый" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "Просрочен" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "Добавить фильтр" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Записи не найдены" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/sk/messages.po b/src/frontend/src/locales/sk/messages.po index 28358c03f3..663092bbc1 100644 --- a/src/frontend/src/locales/sk/messages.po +++ b/src/frontend/src/locales/sk/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sk\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Slovak\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/sl/messages.po b/src/frontend/src/locales/sl/messages.po index 5f12cbfdba..b1fbfcda9b 100644 --- a/src/frontend/src/locales/sl/messages.po +++ b/src/frontend/src/locales/sl/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sl\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Slovenian\n" "Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/sr/messages.po b/src/frontend/src/locales/sr/messages.po index f6e66d0ef6..8a54bd7ab8 100644 --- a/src/frontend/src/locales/sr/messages.po +++ b/src/frontend/src/locales/sr/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sr\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Serbian (Latin)\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" @@ -84,13 +84,13 @@ msgstr "Skeniraj ili unesi podatke bar koda" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "Skeniraj ili unesi podatke bar koda" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Otvori reflektor" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "Prikaži broj naloga za povrat koji su dodeljeni vama" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Početak" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Početak sa InvenTree" @@ -606,7 +614,7 @@ msgstr "Nema novosti" msgid "There are no unread news items" msgstr "Nema nepročitanih novosti" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "Nema nepročitanih novosti" msgid "Superuser" msgstr "Superkorisnik" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "Osoblje" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Nije definisano ime" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Ukloniti sliku sa ovog predmeta?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Greška prilikom učitavanja šablona" msgid "Error saving template" msgstr "Greška prilikom čuvanja šablona" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "Nije moguće učitavanje šablona sa servera" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "Nije moguće učitavanje šablona sa servera" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Sačuvaj i ponovo učitaj pregled" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Da li ste sigurni da želite da sačuvate i ponovo učitate pregled" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Da bi se prikazao pregled, trenutni šablon treba da bude zamenjen na serveru sa vašim izmenama, što može uzrokovati probleme sa oznakom ako se trenutno aktivno koristi. Da li želite da nastavite?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Sačuvaj i ponovo učitaj" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Pregled ažuriran" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Pregled uspešno ažuriran" @@ -867,15 +875,15 @@ msgstr "Pregled uspešno ažuriran" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Ponovo učitaj pregled" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Koristi postojeći šablon sa servera" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "sačuvaj trenutni šablon i ponovo učitaj pregled" @@ -883,11 +891,11 @@ msgstr "sačuvaj trenutni šablon i ponovo učitaj pregled" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Izaberi instancu za pregled" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Greška prilikom generisanja šablona" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} ikone" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Podaci su učitani uspešno" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Zatvori" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Saznaj više" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Nepoznata greška" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Baza podataka" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Mod za uklanjanje gršaka" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Server radi u debaging modu" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Doker mod" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Server je uspostavljen koristeći doker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Podrška za ekstenzije" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Podrška za ekstenzije omogućena" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "podrška za ekstenzije onemogućena" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Status servera" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Sistem ispravan" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Detektovani su problemi" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Pozadinski proces" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Pozadinski proces ne radi" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Podešavanje e-pošte" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "E-pošta nije konfigurisana" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Obaveštenja" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Ništa nije pronađeno….." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Podešavanje" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Podešavanje naloga" @@ -1978,7 +1998,7 @@ msgstr "Grupe" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Korisnička podešavanja" @@ -2036,7 +2056,7 @@ msgstr "Rezultati" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Dobavljači" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Proizvođači" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Mušterije" @@ -2059,37 +2079,41 @@ msgstr "Mušterije" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Unesi tekst za pretragu" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "Osveži rezultate pretrage" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Opcije pretraživanja" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Regex pretraga" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Pretraga preko cele reči" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Regex pretraga" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Desila se greška prilikom pretrage" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Nema rezultata" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Željena pretraga nema rezultata" @@ -2374,7 +2398,7 @@ msgstr "Kategorije delova" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Lokacija zaliha" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Lokacije zaliha" @@ -2693,7 +2717,7 @@ msgstr "Nema zalihe" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Serijski broj" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Posetite stranicu sa dokumentacijom da saznate više o InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "O InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Informacije o serveru" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "O ovoj InvenTree instanci" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Informacije o licenci" @@ -3529,35 +3553,35 @@ msgstr "Idi na administratorski centar" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Dokumentacija o InvenTree API" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Uputstvo za developere" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Uputstvo za InvenTree developere" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "Najčešće postavljena pitanja" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Najčešće postavljena pitanja" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "Repozitorijum GitHub-a" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "Izvorni kod InvenTree na GitHub " @@ -3565,8 +3589,8 @@ msgstr "Izvorni kod InvenTree na GitHub " #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Informacije o sistemu" @@ -3574,11 +3598,11 @@ msgstr "Informacije o sistemu" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "Licence za servise InvenTree softvera" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "O InvenTree Projektu" @@ -3938,7 +3962,7 @@ msgstr "Prodavnica sa već primeljenom zalihom" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "Naziv" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Loš zahtev" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Neovlašćeno" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Zabranjeno" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Nije pronađeno" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "Stavka već skenirana" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "API greška" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "Izveštaji o popisu zaliha" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Pozadinski proces ne radi" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "Servis za upravljanje pozadinskim zadacima nije aktivan. Kontaktirajte sistem administratora." @@ -5558,18 +5586,18 @@ msgstr "Servis za upravljanje pozadinskim zadacima nije aktivan. Kontaktirajte s #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Zadaci koji treba da se izvrše" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Zakazani zadaci" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Neuspeli zadaci" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Oznake" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Izveštavanje" @@ -6488,7 +6516,7 @@ msgstr "Može da se sastavi" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "Povezani delovi" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Prensi zalihe dela" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "Nalog" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "Naruči zalihe" @@ -7478,37 +7506,37 @@ msgstr "Serijalizuj" msgid "Serialize stock" msgstr "Serijalizuj zalihe" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "Vrati" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "Vrati od mušterije" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "Dodeli mušteriji" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "Dodeli mušteriji" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Akcije stavki" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "Zastarelo" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "Isteklo" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "Nedostupno" @@ -7756,17 +7784,17 @@ msgstr "Dodaj filter" msgid "Clear Filters" msgstr "Očisti filtere" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Nema pronađenih zapisa" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "Greška pri učitavanju opcija tabele" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "Server je vratio neispravan tip podataka" @@ -7795,6 +7823,10 @@ msgstr "Server je vratio neispravan tip podataka" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/sv/messages.po b/src/frontend/src/locales/sv/messages.po index 2408a78d70..5b1120fa7f 100644 --- a/src/frontend/src/locales/sv/messages.po +++ b/src/frontend/src/locales/sv/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sv\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Öppna spotlight" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Kom igång" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Komma igång med InvenTree" @@ -606,7 +614,7 @@ msgstr "Inga nyheter" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Inget namn definierat" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Vill du ta bort den associerade bilden från denna artikel?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Fel vid inläsning av mall" msgid "Error saving template" msgstr "Fel vid sparande av mall" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Spara och ladda om förhandsgranskning" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Är du säker på att du vill spara och ladda om förhandsgranskningen?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "För att visa förhandsgranskningen måste den aktuella mallen bytas ut på servern med dina ändringar som kan bryta etiketten om den är under aktiv användning. Vill du fortsätta?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Spara och ladda om" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Förhandsgranskningen uppdaterad" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Uppdateringen av förhandsgranskningen lyckades." @@ -867,15 +875,15 @@ msgstr "Uppdateringen av förhandsgranskningen lyckades." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Ladda om förhandsgranskning" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Använd mallen som finns sparad på servern" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Spara den aktuella mallen och ladda om förhandsgranskningen" @@ -883,11 +891,11 @@ msgstr "Spara den aktuella mallen och ladda om förhandsgranskningen" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Välj instans att förhandsgranska" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Fel vid rendering av mall" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} ikoner" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Data har importerats framgångsrikt" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Stäng" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Läs mer" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Okänt fel" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Databas" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Felsökningsläge" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Servern körs i felsökningsläge" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Docker läge" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Servern distribueras med hjälp av Docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Stöd för tillägg" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Stöd för tillägg aktiverat" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Stöd för tillägg inaktiverat" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Serverstatus" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Frisk" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Problem har upptäckts" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Bakgrundsarbetare" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Bakgrundsarbetare körs inte" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "E-postinställningar" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "E-postinställningar har inte konfigurerats" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Notifikationer" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Ingenting hittades..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Inställningar" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Kontoinställningar" @@ -1978,7 +1998,7 @@ msgstr "Grupper" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "Användarinställningar" @@ -2036,7 +2056,7 @@ msgstr "resultat" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Tillverkare" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Kunder" @@ -2059,37 +2079,41 @@ msgstr "Kunder" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Ange sökord" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Sökalternativ" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Regex sökning" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Hela ordsökningen" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Regex sökning" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Ett fel inträffade under sökfrågan" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Inga resultat" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Inga resultat tillgängliga för sökfrågan" @@ -2374,7 +2398,7 @@ msgstr "Artikelkategorier" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Lagerplats" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Lagerplats" @@ -2693,7 +2717,7 @@ msgstr "Inget på lager" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Serienummer" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Besök dokumentationen för att läsa mer om InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Om InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Serverinformation" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Licensinformation" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree API dokumentation" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Utvecklarmanual" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree utvecklarmanual" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "Frågor och svar" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Vanliga frågor (FAQ)" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Systeminformation" @@ -3574,11 +3598,11 @@ msgstr "Systeminformation" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Felaktig begäran" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Ej behörig" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Otillåten" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Hittades inte" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Bakgrundsarbetare körs inte" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Etiketter" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Rapportering" @@ -6488,7 +6516,7 @@ msgstr "Kan tillverkas" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "Relaterade artiklar" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Överför artikellager" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "Lägg till filter" msgid "Clear Filters" msgstr "Rensa filter" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Inga resultat hittades" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/th/messages.po b/src/frontend/src/locales/th/messages.po index dcf482018c..7850e1463f 100644 --- a/src/frontend/src/locales/th/messages.po +++ b/src/frontend/src/locales/th/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: th\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Thai\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "" msgid "Error saving template" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "" @@ -867,15 +875,15 @@ msgstr "" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "" @@ -883,11 +891,11 @@ msgstr "" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "" @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "" @@ -5558,18 +5586,18 @@ msgstr "" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/tr/messages.po b/src/frontend/src/locales/tr/messages.po index 1fdbd61dd6..01d4b74a13 100644 --- a/src/frontend/src/locales/tr/messages.po +++ b/src/frontend/src/locales/tr/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: tr\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -84,13 +84,13 @@ msgstr "Barkod verisi tara veya gir" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "Barkod verisi tara veya gir" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Spot ışığını aç" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "Size atanana gecikmiş iade siparişlerinin sayısını gösterin" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Başlarken" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "InvenTree ile başlarken" @@ -606,7 +614,7 @@ msgstr "Haber yok" msgid "There are no unread news items" msgstr "Burada okunmamış haber yok" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "Burada okunmamış haber yok" msgid "Superuser" msgstr "Süper Kullanıcı" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "Personel" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Herhangi bir ad tanımlanmamış" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Bu ögeyle ilişkilendirilmiş resim kaldırılsın mı?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Şablonu yüklemede hata" msgid "Error saving template" msgstr "Şablonu kaydetmede hata" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Önizlemeyi Kaydet & Yeniden Yükle" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Önizlemeyi Kaydedip Yeniden Yüklemek istediğinize emin misiniz?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Önizlemeyi oluşturmak için mevcut şablonun, aktif kullanımdaysa etiketi bozabilecek değişikliklerinizle sunucuda değiştirilmesi gerekir. Devam etmek istiyor musunuz?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Kaydet & Yeniden Yükle" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Güncelleneni önizle" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Önizleme başarıyla güncellendi." @@ -867,15 +875,15 @@ msgstr "Önizleme başarıyla güncellendi." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Önizlemeyi yeniden yükle" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Sunucuda kayıtlı olan şablonu kullan" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Mevcut şablonu kaydet ve önizlemeyi yeniden yükle" @@ -883,11 +891,11 @@ msgstr "Mevcut şablonu kaydet ve önizlemeyi yeniden yükle" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Önizlenecek örneği seçin" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Şablonu oluşturmada hata" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} simge" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Veri başarıyla içe aktarıldı" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Kapat" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Devamını Oku" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Bilinmeyen hata" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Veritabanı" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Hata Ayıklama Kipi" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Sunucu hata ayıklama kipinde çalışıyor" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Docker Kipi" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Sunucu docker kullanılarak dağıtıldı" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Eklenti Desteği" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Eklenti desteği etkin" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Eklenti desteği etkisiz" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Sunucu durumu" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Sağlıklı" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Sorunlar saptandı" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Arkaplan işçisi" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Arkaplan işçisi çalışmıyor" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "E-posta Ayarları" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "E-posta ayarları yapılandırılmadı" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Bildirimler" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Hiçbir şey bulunmadı..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Ayarlar" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Hesap Ayarları" @@ -1978,7 +1998,7 @@ msgstr "Gruplar" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "sonuçlar" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Sağlayıcılar" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Üreticiler" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Müşteriler" @@ -2059,37 +2079,41 @@ msgstr "Müşteriler" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Arama metnini gir" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Arama Seçenekleri" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Regex arama" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Tam kelime arama" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Regex arama" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Arama sorgusu sırasında bir hata oluştu" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "Sonuç Yok" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Arama sorgusu için sonuç yok" @@ -2374,7 +2398,7 @@ msgstr "Parça Kategorileri" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Stok Konumu" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Stok Konumları" @@ -2693,7 +2717,7 @@ msgstr "Stok yok" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Seri Numarası" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "InvenTree hakkında daha fazla öğrenmek için belgelendirmeyi ziyaret edin" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "InvenTree Hakkında" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Sunucu Bilgisi" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Lisans Bilgisi" @@ -3529,35 +3553,35 @@ msgstr "Yönetim Merkezine Git" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree API dokümantasyonu" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Geliştirici Kılavuzu" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree geliştirici kılavuzu" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "SSS" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Sıkça sorulan sorular" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Sistem Bilgisi" @@ -3574,11 +3598,11 @@ msgstr "Sistem Bilgisi" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "Önceden alınmış bir stok ile depola" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "Etiket" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Hatalı istek" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Yetkisiz" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Yasaklı" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Bulunamadı" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Arkaplan işçisi çalışmıyor" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "Arka plan görev yöneticisi hizmeti çalışmıyor. Sistem yöneticinizle iletişime geçin." @@ -5558,18 +5586,18 @@ msgstr "Arka plan görev yöneticisi hizmeti çalışmıyor. Sistem yöneticiniz #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Bekleyen Görevler" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Planlanmış Görevler" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Başarısız Görevler" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Etiketler" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Raporlama" @@ -6488,7 +6516,7 @@ msgstr "Yapılabilir" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "İlgili Parçalar" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Parça stokunu aktar" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "Emir" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "Stok Sipariş Et" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Stok Ögesi Eylemleri" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "Filtre Ekle" msgid "Clear Filters" msgstr "Süzgeçleri Temizle" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Hiç kayıt bulunamadı" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "Sunucu yanlış veri türü döndürdü" @@ -7795,6 +7823,10 @@ msgstr "Sunucu yanlış veri türü döndürdü" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/uk/messages.po b/src/frontend/src/locales/uk/messages.po index b1e7345091..3e0e30f19f 100644 --- a/src/frontend/src/locales/uk/messages.po +++ b/src/frontend/src/locales/uk/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: uk\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Відкрити екран" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Починаємо" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Ім'я не визначено" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Видалити пов'язане зображення з цього елемента?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Помилка при завантаженні шаблону" msgid "Error saving template" msgstr "Помилка збереження шаблону" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Зберегти і перезавантажити попередній перегляд" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Ви впевнені, що бажаєте зберегти та перезавантажити попередній перегляд?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Щоб показати попередній перегляд, поточний шаблон повинен бути замінений на сервер з внесеними змінами, які можуть зламати етикетку, якщо він знаходиться під активним використанням. Бажаєте продовжити?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Зберегти та перезавантажити" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Перегляд оновлено" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Попередній перегляд був успішно оновлений." @@ -867,15 +875,15 @@ msgstr "Попередній перегляд був успішно оновле #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Перезавантажити попередній перегляд" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Використовувати поточно збережений шаблон з сервера" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Зберегти поточний шаблон і перезавантажити попередній перегляд" @@ -883,11 +891,11 @@ msgstr "Зберегти поточний шаблон і перезаванта #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "Виберіть екземпляр для перегляду" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Помилка відображення шаблону" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "Значки {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Невідома помилка" @@ -1739,54 +1747,53 @@ msgid "Database" msgstr "База даних" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Режим налагодження" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Підтримка плагінів" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Статус сервера" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Виявлено проблеми" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 @@ -1794,47 +1801,60 @@ msgid "Email Settings" msgstr "Налаштування електронної пошти" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Сповіщення" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Нічого не знайдено..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Налаштування" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" @@ -1978,7 +1998,7 @@ msgstr "Групи" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "результати" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Постачальники" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "" @@ -2059,37 +2079,41 @@ msgstr "" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Параметри пошуку" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "" @@ -2374,7 +2398,7 @@ msgstr "Категорії" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" @@ -2693,7 +2717,7 @@ msgstr "Немає в наявності" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Серійний номер" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Інформація про сервер" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Відомості про ліцензію" @@ -3529,35 +3553,35 @@ msgstr "" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "" @@ -3574,11 +3598,11 @@ msgstr "" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "Служба фонового керування завданнями не працює. Зверніться до системного адміністратора." @@ -5558,18 +5586,18 @@ msgstr "Служба фонового керування завданнями н #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "" @@ -6488,7 +6516,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "" @@ -7795,6 +7823,10 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/vi/messages.po b/src/frontend/src/locales/vi/messages.po index 99165e0a9b..c107a3123e 100644 --- a/src/frontend/src/locales/vi/messages.po +++ b/src/frontend/src/locales/vi/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:05\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "Mở đèn chiếu" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "Bắt đầu" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "Bắt đầu với InvenTree" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "Chưa định nghĩa tên" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "Xóa hình liên quan khỏi mục này?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "Lỗi load mẫu" msgid "Error saving template" msgstr "Lỗi lưu mẫu" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "Lưu và tải lại xem trước" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "Bạn có muốn lưu và tải lại xem trước?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "Để hiển thị bản xem trước, mẫu hiện tại cần được thay thế trên máy chủ bằng các sửa đổi của bạn, điều này có thể làm hỏng nhãn nếu nó đang được sử dụng. Bạn có muốn tiếp tục không?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "Lưu và Tải Lại" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "Đã cập nhật xem trước" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "Xem trước đã được cập nhật thành công." @@ -867,15 +875,15 @@ msgstr "Xem trước đã được cập nhật thành công." #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "Tải lại xem trước " -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "Sử dụng mẫu có sẵn trên máy chủ" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "Lưu mẫu hiện tại và tải lại xem trước" @@ -883,11 +891,11 @@ msgstr "Lưu mẫu hiện tại và tải lại xem trước" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "Lỗi hiển thị mẫu" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} icons" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "Dữ liệu đã được nhập thành công" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "Đóng" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "Xem thêm" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "Lỗi không xác định" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "Cơ sở dữ liệu" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "Chế độ gỡ lỗi" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "Máy chủ đang hoạt động dưới chế độ gỡ lỗi" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "Chế độ Docker" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "Máy chủ được triển khai bởi docker" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "Hỗ trợ phần bổ sung" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "Hỗ trợ phần bổ sung đã bật" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "Hỗ trợ phần bổ sung đã tắt" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "Tình trạng máy chủ" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "Sức khỏe" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "Đã phát hiện vấn đề" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "Nhân công chạy ngầm" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "Nhân công chạy ngầm không hoạt động" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "Thiết lập email" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "Chưa cấu hình thiết lập email" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "Thông báo" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "Không tìm thấy..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "Cài đặt" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Cài đặt tài khoản" @@ -1978,7 +1998,7 @@ msgstr "Nhóm" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "kết quả" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "Nhà cung cấp" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "Nhà sản xuất" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "Khách hàng" @@ -2059,37 +2079,41 @@ msgstr "Khách hàng" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "Nhập văn bản tìm kiếm" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "Tùy chọn tìm kiếm" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "Tìm kiếm regex" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "Tìm phù hợp toàn bộ từ" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "Tìm kiếm regex" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "Lỗi trong quá trình truy vấn tìm kiếm" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "Không có kết quả nào được tìm thấy với truy vấn tìm kiếm" @@ -2374,7 +2398,7 @@ msgstr "Danh mục phụ kiện" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "Vị trí kho hàng" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Vị trí kho hàng" @@ -2693,7 +2717,7 @@ msgstr "Hết hàng" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "Số sê-ri" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "Truy cập tài liệu để tìm hiểu thêm về InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "Giới thiệu" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "Thông tin máy chủ" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "Thông tin giấy phép" @@ -3529,35 +3553,35 @@ msgstr "Đi đến Trung tâm quản trị" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "Tài liệu InvenTree API" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "Sổ tay lập trình" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "Sổ tay lập trình InvenTree" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "Câu hỏi thường gặp" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "Câu hỏi thường gặp" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "Thông tin hệ thống" @@ -3574,11 +3598,11 @@ msgstr "Thông tin hệ thống" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "Cửa hàng đã nhận hàng" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "Yêu cầu không hợp lệ" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "Chưa cấp quyền" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "Bị cấm" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "Không tìm thấy" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "Nhân công chạy ngầm không hoạt động" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "Dịch vụ quản lý tác vụ nền không chạy. Hãy liên hệ với quản trị viên hệ thống của bạn." @@ -5558,18 +5586,18 @@ msgstr "Dịch vụ quản lý tác vụ nền không chạy. Hãy liên hệ v #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "Tác vụ chờ xử lý" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "Tác vụ theo lịch" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "Tác vụ thất bại" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "Nhãn" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "Báo cáo" @@ -6488,7 +6516,7 @@ msgstr "Có thể dựng" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "Phụ kiện liên quan" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "Chuyển kho nguyên liệu" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "" @@ -7478,37 +7506,37 @@ msgstr "" msgid "Serialize stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "Thao tác kho items" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "Thêm bộ lọc" msgid "Clear Filters" msgstr "Xóa bộ lọc" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "Không tìm thấy biểu ghi" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "Máy chủ trả chưa đúng dữ liệu" @@ -7795,6 +7823,10 @@ msgstr "Máy chủ trả chưa đúng dữ liệu" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/zh_Hans/messages.po b/src/frontend/src/locales/zh_Hans/messages.po index aaa2a40341..6f9ab4650e 100644 --- a/src/frontend/src/locales/zh_Hans/messages.po +++ b/src/frontend/src/locales/zh_Hans/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: zh\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "打开聚焦" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "快速上手" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "开始使用 InvenTree" @@ -606,7 +614,7 @@ msgstr "沒有消息" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "超级用户" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "工作人员" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "未定义名称" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "删除与此项关联的图片?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "加载模板时出错" msgid "Error saving template" msgstr "保存模板时出错" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "无法从服务器上加载模板。" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "无法从服务器上加载模板。" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "保存并重新加载预览" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "您确定要保存并重新加载预览吗?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "要渲染预览效果,需要在服务器上用您的修改替换当前模板,如果标签正在使用中,可能会损坏标签。您想继续吗?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "保存并重新加载" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "预览已更新" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "预览已成功更新。" @@ -867,15 +875,15 @@ msgstr "预览已成功更新。" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "重新加载预览" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "使用当前存储服务器的模板" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "保存当前模板并重新加载预览" @@ -883,11 +891,11 @@ msgstr "保存当前模板并重新加载预览" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "选择预览实例" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "渲染模板时出错" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} 个图标" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "数据已成功导入" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "关闭" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "了解更多" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "未知错误" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "数据库" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "调试模式" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "服务器以调试模式运行" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "停靠模式" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "服务器是使用docker部署的" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "插件支持" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "插件支持已启用" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "插件支持已禁用" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "服务器状态" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "健康" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "检测到问题" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "后台工作者" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "后台worker未运行" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "电子邮件设置" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "电子邮件设置未配置" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "通知" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "无结果..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "设置" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "账户设置" @@ -1978,7 +1998,7 @@ msgstr "群组" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "用户设置" @@ -2036,7 +2056,7 @@ msgstr "结果" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "供应商" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "制造商" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "客户" @@ -2059,37 +2079,41 @@ msgstr "客户" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "输入搜索文本" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "刷新搜索结果" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "搜索选项" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "正则表达式搜索" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "全词搜索" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "正则表达式搜索" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "搜索查询时发生错误" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "无结果" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "没有可供搜索查询的结果" @@ -2374,7 +2398,7 @@ msgstr "零件类别" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "库存地点" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "库存地点" @@ -2693,7 +2717,7 @@ msgstr "无库存" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "序列号" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "访问文档以了解更多关于 InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "关于 InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "服务器信息" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "许可信息" @@ -3529,35 +3553,35 @@ msgstr "转到管理中心" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree API 文档" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "开发者手册" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree 开发者手册" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "常见问题" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "系统信息" @@ -3574,11 +3598,11 @@ msgstr "系统信息" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "存储已收到的库存" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "错误的请求" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "未授权" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "禁止访问" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "未找到" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "盘点报告" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "后台worker未运行" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "后台任务管理器服务未运行。请联系系统管理员。" @@ -5558,18 +5586,18 @@ msgstr "后台任务管理器服务未运行。请联系系统管理员。" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "待完成任务" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "计划任务" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "失败任务" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "标签" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "报告" @@ -6488,7 +6516,7 @@ msgstr "可以创建" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "关联零件" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "转移零件库存" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "订单" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "订单库存" @@ -7478,37 +7506,37 @@ msgstr "序列化" msgid "Serialize stock" msgstr "序列化库存" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "退货" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "从客户退货" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "库存项操作" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "呆滞" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "已过期" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "不可用" @@ -7756,17 +7784,17 @@ msgstr "添加过滤条件" msgid "Clear Filters" msgstr "清除筛选" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "没有找到记录" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "服务器返回了错误的数据类型" @@ -7795,6 +7823,10 @@ msgstr "服务器返回了错误的数据类型" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions" diff --git a/src/frontend/src/locales/zh_Hant/messages.po b/src/frontend/src/locales/zh_Hant/messages.po index 994871d1e1..4b84e70286 100644 --- a/src/frontend/src/locales/zh_Hant/messages.po +++ b/src/frontend/src/locales/zh_Hant/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: zh\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-04-01 22:04\n" +"PO-Revision-Date: 2025-04-06 02:35\n" "Last-Translator: \n" "Language-Team: Chinese Traditional\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -84,13 +84,13 @@ msgstr "" #: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/editors/NotesEditor.tsx:74 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:148 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 #: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:45 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:88 -#: src/components/nav/SearchDrawer.tsx:554 +#: src/components/nav/SearchDrawer.tsx:575 #: src/components/render/ModelType.tsx:273 #: src/functions/auth.tsx:527 #: src/pages/ErrorPage.tsx:11 @@ -99,7 +99,7 @@ msgstr "" #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 -#: src/tables/InvenTreeTable.tsx:508 +#: src/tables/InvenTreeTable.tsx:512 #: src/tables/InvenTreeTableHeader.tsx:118 #: src/tables/bom/BomTable.tsx:455 #: src/tables/stock/StockItemTestResultTable.tsx:321 @@ -292,7 +292,15 @@ msgid "Open spotlight" msgstr "打開聚焦" #: src/components/buttons/StarredToggleButton.tsx:57 -msgid "Unsubscribe from part" +#~ msgid "Unsubscribe from part" +#~ msgstr "Unsubscribe from part" + +#: src/components/buttons/StarredToggleButton.tsx:59 +msgid "Unsubscribe from notifications" +msgstr "" + +#: src/components/buttons/StarredToggleButton.tsx:60 +msgid "Subscribe to notifications" msgstr "" #: src/components/buttons/YesNoButton.tsx:16 @@ -549,12 +557,12 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:158 #: src/components/dashboard/widgets/GetStartedWidget.tsx:15 -#: src/defaults/links.tsx:85 +#: src/defaults/links.tsx:86 msgid "Getting Started" msgstr "快速上手" #: src/components/dashboard/DashboardWidgetLibrary.tsx:159 -#: src/defaults/links.tsx:88 +#: src/defaults/links.tsx:89 msgid "Getting started with InvenTree" msgstr "開始使用 InvenTree" @@ -606,7 +614,7 @@ msgstr "" msgid "There are no unread news items" msgstr "" -#: src/components/details/Details.tsx:115 +#: src/components/details/Details.tsx:116 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72 #: src/pages/core/UserDetail.tsx:154 #: src/tables/core/UserTable.tsx:29 @@ -614,22 +622,22 @@ msgstr "" msgid "Superuser" msgstr "超級用户" -#: src/components/details/Details.tsx:116 +#: src/components/details/Details.tsx:117 #: src/pages/core/UserDetail.tsx:151 #: src/tables/core/UserTable.tsx:24 #: src/tables/settings/UserTable.tsx:289 msgid "Staff" msgstr "工作人員" -#: src/components/details/Details.tsx:117 -msgid "Email: " -msgstr "" - #: src/components/details/Details.tsx:117 #~ msgid "Email:" #~ msgstr "Email:" -#: src/components/details/Details.tsx:384 +#: src/components/details/Details.tsx:118 +msgid "Email: " +msgstr "" + +#: src/components/details/Details.tsx:387 msgid "No name defined" msgstr "未定義名稱" @@ -642,7 +650,7 @@ msgid "Remove the associated image from this item?" msgstr "刪除與此項關聯的圖片?" #: src/components/details/DetailsImage.tsx:83 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:178 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187 #: src/components/items/ActionDropdown.tsx:275 #: src/components/items/ActionDropdown.tsx:276 #: src/contexts/ThemeContext.tsx:42 @@ -830,36 +838,36 @@ msgstr "加載模板時出錯" msgid "Error saving template" msgstr "保存模板時出錯" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -msgid "Could not load the template from the server." -msgstr "" - #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 #~ msgid "Save & Reload preview?" #~ msgstr "Save & Reload preview?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:166 -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:297 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 +msgid "Could not load the template from the server." +msgstr "" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:175 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:306 msgid "Save & Reload Preview" msgstr "保存並重新加載預覽" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:171 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:180 msgid "Are you sure you want to Save & Reload the preview?" msgstr "您確定要保存並重新加載預覽嗎?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:173 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:182 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "要渲染預覽效果,需要在服務器上用您的修改替換當前模板,如果標籤正在使用中,可能會損壞標籤。您想繼續嗎?" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:177 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:186 msgid "Save & Reload" msgstr "保存並重新加載" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:209 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:218 msgid "Preview updated" msgstr "預覽已更新" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:210 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219 msgid "The preview has been updated successfully." msgstr "預覽已成功更新。" @@ -867,15 +875,15 @@ msgstr "預覽已成功更新。" #~ msgid "Save & Reload preview" #~ msgstr "Save & Reload preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:289 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 msgid "Reload preview" msgstr "重新加載預覽" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:290 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:299 msgid "Use the currently stored template from the server" msgstr "使用當前存儲服務器的模板" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:298 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:307 msgid "Save the current template and reload the preview" msgstr "保存當前模板並重新加載預覽" @@ -883,11 +891,11 @@ msgstr "保存當前模板並重新加載預覽" #~ msgid "to preview" #~ msgstr "to preview" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:357 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:366 msgid "Select instance to preview" msgstr "選擇預覽實例" -#: src/components/editors/TemplateEditor/TemplateEditor.tsx:401 +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:410 msgid "Error rendering template" msgstr "渲染模板時出錯" @@ -1280,7 +1288,7 @@ msgid "{0} icons" msgstr "{0} 個圖標" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/components/nav/Header.tsx:187 +#: src/components/nav/Header.tsx:131 #: src/pages/Index/Settings/UserSettings.tsx:67 #: src/tables/Search.tsx:27 msgid "Search" @@ -1461,7 +1469,7 @@ msgstr "數據已成功導入" #: src/components/importer/ImporterDrawer.tsx:112 #: src/components/importer/ImporterDrawer.tsx:121 #: src/components/modals/AboutInvenTreeModal.tsx:183 -#: src/components/modals/ServerInfoModal.tsx:132 +#: src/components/modals/ServerInfoModal.tsx:131 msgid "Close" msgstr "關閉" @@ -1566,7 +1574,7 @@ msgid "Read More" msgstr "瞭解更多" #: src/components/items/ErrorItem.tsx:8 -#: src/tables/InvenTreeTable.tsx:500 +#: src/tables/InvenTreeTable.tsx:504 msgid "Unknown error" msgstr "未知錯誤" @@ -1739,102 +1747,114 @@ msgid "Database" msgstr "數據庫" #: src/components/modals/ServerInfoModal.tsx:52 -#: src/components/nav/Header.tsx:85 +#: src/components/nav/Alerts.tsx:39 msgid "Debug Mode" msgstr "調試模式" -#: src/components/modals/ServerInfoModal.tsx:55 +#: src/components/modals/ServerInfoModal.tsx:56 msgid "Server is running in debug mode" msgstr "服務器以調試模式運行" -#: src/components/modals/ServerInfoModal.tsx:62 +#: src/components/modals/ServerInfoModal.tsx:63 msgid "Docker Mode" msgstr "停靠模式" -#: src/components/modals/ServerInfoModal.tsx:65 +#: src/components/modals/ServerInfoModal.tsx:66 msgid "Server is deployed using docker" msgstr "服務器是使用docker部署的" -#: src/components/modals/ServerInfoModal.tsx:71 +#: src/components/modals/ServerInfoModal.tsx:72 msgid "Plugin Support" msgstr "插件支持" -#: src/components/modals/ServerInfoModal.tsx:76 +#: src/components/modals/ServerInfoModal.tsx:77 msgid "Plugin support enabled" msgstr "插件支持已啓用" -#: src/components/modals/ServerInfoModal.tsx:78 +#: src/components/modals/ServerInfoModal.tsx:79 msgid "Plugin support disabled" msgstr "插件支持已禁用" -#: src/components/modals/ServerInfoModal.tsx:85 +#: src/components/modals/ServerInfoModal.tsx:86 msgid "Server status" msgstr "服務器狀態" -#: src/components/modals/ServerInfoModal.tsx:91 +#: src/components/modals/ServerInfoModal.tsx:92 msgid "Healthy" msgstr "健康" -#: src/components/modals/ServerInfoModal.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:94 msgid "Issues detected" msgstr "檢測到問題" -#: src/components/modals/ServerInfoModal.tsx:102 -#: src/components/nav/Header.tsx:93 +#: src/components/modals/ServerInfoModal.tsx:103 +#: src/components/nav/Alerts.tsx:48 msgid "Background Worker" msgstr "後台工作者" -#: src/components/modals/ServerInfoModal.tsx:106 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:29 -msgid "Background worker not running" -msgstr "後台worker未運行" +#: src/components/modals/ServerInfoModal.tsx:107 +msgid "The Background worker process is not running." +msgstr "" #: src/components/modals/ServerInfoModal.tsx:114 msgid "Email Settings" msgstr "電子郵件設置" #: src/components/modals/ServerInfoModal.tsx:118 -msgid "Email settings not configured" -msgstr "電子郵件設置未配置" +#: src/components/nav/Alerts.tsx:59 +msgid "Email settings not configured." +msgstr "" -#: src/components/nav/Header.tsx:86 +#: src/components/modals/ServerInfoModal.tsx:118 +#~ msgid "Email settings not configured" +#~ msgstr "Email settings not configured" + +#: src/components/nav/Alerts.tsx:41 msgid "The server is running in debug mode." msgstr "" -#: src/components/nav/Header.tsx:94 +#: src/components/nav/Alerts.tsx:50 msgid "The background worker process is not running." msgstr "" -#: src/components/nav/Header.tsx:101 +#: src/components/nav/Alerts.tsx:57 +msgid "Email settings" +msgstr "" + +#: src/components/nav/Alerts.tsx:66 msgid "Server Restart" msgstr "" -#: src/components/nav/Header.tsx:102 +#: src/components/nav/Alerts.tsx:68 msgid "The server requires a restart to apply changes." msgstr "" -#: src/components/nav/Header.tsx:112 +#: src/components/nav/Alerts.tsx:78 msgid "Database Migrations" msgstr "" -#: src/components/nav/Header.tsx:113 +#: src/components/nav/Alerts.tsx:80 msgid "There are pending database migrations." msgstr "" -#: src/components/nav/Header.tsx:206 +#: src/components/nav/Alerts.tsx:91 +msgid "Alerts" +msgstr "" + +#: src/components/nav/Alerts.tsx:127 +msgid "Learn more about {code}" +msgstr "" + +#: src/components/nav/Header.tsx:150 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/NotificationDrawer.tsx:179 #: src/pages/Index/Settings/SystemSettings.tsx:112 -#: src/pages/Index/Settings/UserSettings.tsx:98 +#: src/pages/Index/Settings/UserSettings.tsx:99 #: src/pages/Notifications.tsx:45 #: src/pages/Notifications.tsx:130 msgid "Notifications" msgstr "通知" -#: src/components/nav/Header.tsx:219 -msgid "Alerts" -msgstr "" - #: src/components/nav/Layout.tsx:80 msgid "Nothing found..." msgstr "無結果..." @@ -1851,7 +1871,7 @@ msgid "Settings" msgstr "設置" #: src/components/nav/MainMenu.tsx:59 -#: src/pages/Index/Settings/UserSettings.tsx:125 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "賬户設置" @@ -1978,7 +1998,7 @@ msgstr "羣組" #: src/components/nav/NavigationDrawer.tsx:147 #: src/components/nav/SettingsHeader.tsx:40 -#: src/pages/Index/Settings/UserSettings.tsx:121 +#: src/pages/Index/Settings/UserSettings.tsx:122 msgid "User Settings" msgstr "" @@ -2036,7 +2056,7 @@ msgstr "結果" msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:276 +#: src/components/nav/SearchDrawer.tsx:287 #: src/pages/company/ManufacturerPartDetail.tsx:177 #: src/pages/part/PartDetail.tsx:561 #: src/pages/part/PartSupplierDetail.tsx:15 @@ -2044,13 +2064,13 @@ msgstr "" msgid "Suppliers" msgstr "供應商" -#: src/components/nav/SearchDrawer.tsx:286 +#: src/components/nav/SearchDrawer.tsx:297 #: src/pages/part/PartSupplierDetail.tsx:23 #: src/pages/purchasing/PurchasingIndex.tsx:98 msgid "Manufacturers" msgstr "製造商" -#: src/components/nav/SearchDrawer.tsx:296 +#: src/components/nav/SearchDrawer.tsx:307 #: src/pages/sales/SalesIndex.tsx:124 msgid "Customers" msgstr "客户" @@ -2059,37 +2079,41 @@ msgstr "客户" #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:468 +#: src/components/nav/SearchDrawer.tsx:480 msgid "Enter search text" msgstr "輸入搜索文本" -#: src/components/nav/SearchDrawer.tsx:479 +#: src/components/nav/SearchDrawer.tsx:491 msgid "Refresh search results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:490 -#: src/components/nav/SearchDrawer.tsx:497 +#: src/components/nav/SearchDrawer.tsx:502 +#: src/components/nav/SearchDrawer.tsx:509 msgid "Search Options" msgstr "搜索選項" -#: src/components/nav/SearchDrawer.tsx:500 -msgid "Regex search" -msgstr "正則表達式搜索" - -#: src/components/nav/SearchDrawer.tsx:509 +#: src/components/nav/SearchDrawer.tsx:512 msgid "Whole word search" msgstr "全詞搜索" -#: src/components/nav/SearchDrawer.tsx:557 +#: src/components/nav/SearchDrawer.tsx:521 +msgid "Regex search" +msgstr "正則表達式搜索" + +#: src/components/nav/SearchDrawer.tsx:530 +msgid "Notes search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:578 msgid "An error occurred during search query" msgstr "搜索查詢時發生錯誤" -#: src/components/nav/SearchDrawer.tsx:568 +#: src/components/nav/SearchDrawer.tsx:589 #: src/tables/part/PartTestTemplateTable.tsx:82 msgid "No Results" msgstr "無結果" -#: src/components/nav/SearchDrawer.tsx:571 +#: src/components/nav/SearchDrawer.tsx:592 msgid "No results available for search query" msgstr "沒有可供搜索查詢的結果" @@ -2374,7 +2398,7 @@ msgstr "零件類別" #: src/forms/BuildForms.tsx:409 #: src/forms/BuildForms.tsx:546 #: src/forms/SalesOrderForms.tsx:268 -#: src/pages/stock/StockDetail.tsx:911 +#: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:46 #: src/tables/stock/StockTrackingTable.tsx:53 msgid "Stock Item" @@ -2397,7 +2421,7 @@ msgstr "庫存地點" #: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:177 #: src/pages/stock/LocationDetail.tsx:372 -#: src/pages/stock/StockDetail.tsx:902 +#: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "庫存地點" @@ -2693,7 +2717,7 @@ msgstr "無庫存" #: src/components/render/Stock.tsx:61 #: src/pages/stock/StockDetail.tsx:185 -#: src/pages/stock/StockDetail.tsx:838 +#: src/pages/stock/StockDetail.tsx:837 #: src/tables/build/BuildAllocatedStockTable.tsx:123 #: src/tables/build/BuildOutputTable.tsx:81 #: src/tables/sales/SalesOrderAllocationTable.tsx:141 @@ -2716,7 +2740,7 @@ msgstr "序列號" #: src/pages/part/pricing/PriceBreakPanel.tsx:89 #: src/pages/part/pricing/PriceBreakPanel.tsx:172 #: src/pages/stock/StockDetail.tsx:180 -#: src/pages/stock/StockDetail.tsx:844 +#: src/pages/stock/StockDetail.tsx:843 #: src/tables/build/BuildLineTable.tsx:78 #: src/tables/build/BuildOrderTestTable.tsx:205 #: src/tables/part/PartPurchaseOrdersTable.tsx:93 @@ -3410,8 +3434,8 @@ msgid "Visit the documentation to learn more about InvenTree" msgstr "訪問文檔以瞭解更多關於 InvenTree" #: src/defaults/actions.tsx:41 -#: src/defaults/links.tsx:139 -#: src/defaults/links.tsx:185 +#: src/defaults/links.tsx:140 +#: src/defaults/links.tsx:186 msgid "About InvenTree" msgstr "關於 InvenTree" @@ -3429,13 +3453,13 @@ msgid "Server Information" msgstr "服務器信息" #: src/defaults/actions.tsx:49 -#: src/defaults/links.tsx:168 +#: src/defaults/links.tsx:169 msgid "About this InvenTree instance" msgstr "" #: src/defaults/actions.tsx:55 -#: src/defaults/links.tsx:152 -#: src/defaults/links.tsx:174 +#: src/defaults/links.tsx:153 +#: src/defaults/links.tsx:175 msgid "License Information" msgstr "許可信息" @@ -3529,35 +3553,35 @@ msgstr "轉到管理中心" #~ msgid "InvenTree" #~ msgstr "InvenTree" -#: src/defaults/links.tsx:92 +#: src/defaults/links.tsx:93 msgid "API" msgstr "API" -#: src/defaults/links.tsx:95 +#: src/defaults/links.tsx:96 msgid "InvenTree API documentation" msgstr "InvenTree API 文檔" -#: src/defaults/links.tsx:99 +#: src/defaults/links.tsx:100 msgid "Developer Manual" msgstr "開發者手冊" -#: src/defaults/links.tsx:102 +#: src/defaults/links.tsx:103 msgid "InvenTree developer manual" msgstr "InvenTree 開發者手冊" -#: src/defaults/links.tsx:106 +#: src/defaults/links.tsx:107 msgid "FAQ" msgstr "FAQ" -#: src/defaults/links.tsx:109 +#: src/defaults/links.tsx:110 msgid "Frequently asked questions" msgstr "常見問題" -#: src/defaults/links.tsx:113 +#: src/defaults/links.tsx:114 msgid "GitHub Repository" msgstr "" -#: src/defaults/links.tsx:116 +#: src/defaults/links.tsx:117 msgid "InvenTree source code on GitHub" msgstr "" @@ -3565,8 +3589,8 @@ msgstr "" #~ msgid "Licenses for packages used by InvenTree" #~ msgstr "Licenses for packages used by InvenTree" -#: src/defaults/links.tsx:126 -#: src/defaults/links.tsx:167 +#: src/defaults/links.tsx:127 +#: src/defaults/links.tsx:168 msgid "System Information" msgstr "系統信息" @@ -3574,11 +3598,11 @@ msgstr "系統信息" #~ msgid "Licenses" #~ msgstr "Licenses" -#: src/defaults/links.tsx:175 +#: src/defaults/links.tsx:176 msgid "Licenses for dependencies of the InvenTree software" msgstr "" -#: src/defaults/links.tsx:186 +#: src/defaults/links.tsx:187 msgid "About the InvenTree Project" msgstr "" @@ -3938,7 +3962,7 @@ msgstr "存儲已收到的庫存" #: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:219 #: src/pages/stock/StockDetail.tsx:204 -#: src/pages/stock/StockDetail.tsx:860 +#: src/pages/stock/StockDetail.tsx:859 #: src/tables/build/BuildAllocatedStockTable.tsx:130 #: src/tables/build/BuildOrderTestTable.tsx:196 #: src/tables/build/BuildOutputTable.tsx:86 @@ -4212,22 +4236,22 @@ msgid "Label" msgstr "" #: src/functions/api.tsx:33 -#: src/tables/InvenTreeTable.tsx:487 +#: src/tables/InvenTreeTable.tsx:491 msgid "Bad request" msgstr "錯誤的請求" #: src/functions/api.tsx:36 -#: src/tables/InvenTreeTable.tsx:490 +#: src/tables/InvenTreeTable.tsx:494 msgid "Unauthorized" msgstr "未授權" #: src/functions/api.tsx:39 -#: src/tables/InvenTreeTable.tsx:493 +#: src/tables/InvenTreeTable.tsx:497 msgid "Forbidden" msgstr "禁止訪問" #: src/functions/api.tsx:42 -#: src/tables/InvenTreeTable.tsx:496 +#: src/tables/InvenTreeTable.tsx:500 msgid "Not found" msgstr "未找到" @@ -4768,7 +4792,7 @@ msgid "Item already scanned" msgstr "" #: src/pages/Index/Scan.tsx:82 -#: src/tables/InvenTreeTable.tsx:213 +#: src/tables/InvenTreeTable.tsx:217 msgid "API Error" msgstr "" @@ -5551,6 +5575,10 @@ msgid "Stocktake Reports" msgstr "盤點報告" #: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30 +msgid "Background worker not running" +msgstr "後台worker未運行" + +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31 msgid "The background task manager service is not running. Contact your system administrator." msgstr "後台任務管理器服務未運行。請聯繫系統管理員。" @@ -5558,18 +5586,18 @@ msgstr "後台任務管理器服務未運行。請聯繫系統管理員。" #~ msgid "Background Worker Not Running" #~ msgstr "Background Worker Not Running" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:36 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:45 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47 msgid "Pending Tasks" msgstr "待完成任務" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:37 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:53 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55 msgid "Scheduled Tasks" msgstr "計劃任務" -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38 -#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:61 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40 +#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63 msgid "Failed Tasks" msgstr "失敗任務" @@ -5658,7 +5686,7 @@ msgid "Labels" msgstr "標籤" #: src/pages/Index/Settings/SystemSettings.tsx:169 -#: src/pages/Index/Settings/UserSettings.tsx:104 +#: src/pages/Index/Settings/UserSettings.tsx:105 msgid "Reporting" msgstr "報告" @@ -6488,7 +6516,7 @@ msgstr "可以創建" #: src/pages/part/PartDetail.tsx:323 #: src/pages/part/PartDetail.tsx:779 -#: src/pages/stock/StockDetail.tsx:833 +#: src/pages/stock/StockDetail.tsx:832 #: src/tables/build/BuildOrderTestTable.tsx:227 #: src/tables/stock/StockItemTable.tsx:347 msgid "In Production" @@ -6607,7 +6635,7 @@ msgstr "關聯零件" #: src/pages/part/PartDetail.tsx:755 #: src/pages/stock/StockDetail.tsx:191 -#: src/pages/stock/StockDetail.tsx:850 +#: src/pages/stock/StockDetail.tsx:849 #: src/tables/build/BuildLineTable.tsx:186 #: src/tables/part/PartTable.tsx:122 #: src/tables/stock/StockItemTable.tsx:172 @@ -6655,12 +6683,12 @@ msgstr "轉移零件庫存" #: src/pages/part/PartDetail.tsx:933 #: src/pages/part/PartSchedulingDetail.tsx:71 -#: src/pages/stock/StockDetail.tsx:766 +#: src/pages/stock/StockDetail.tsx:765 msgid "Order" msgstr "訂單" #: src/pages/part/PartDetail.tsx:934 -#: src/pages/stock/StockDetail.tsx:767 +#: src/pages/stock/StockDetail.tsx:766 #: src/tables/build/BuildLineTable.tsx:594 msgid "Order Stock" msgstr "訂單庫存" @@ -7478,37 +7506,37 @@ msgstr "序列化" msgid "Serialize stock" msgstr "序列化庫存" -#: src/pages/stock/StockDetail.tsx:778 +#: src/pages/stock/StockDetail.tsx:777 msgid "Return" msgstr "退貨" -#: src/pages/stock/StockDetail.tsx:779 +#: src/pages/stock/StockDetail.tsx:778 msgid "Return from customer" msgstr "從客户退貨" -#: src/pages/stock/StockDetail.tsx:792 +#: src/pages/stock/StockDetail.tsx:791 msgid "Assign to Customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:793 +#: src/pages/stock/StockDetail.tsx:792 msgid "Assign to a customer" msgstr "" -#: src/pages/stock/StockDetail.tsx:805 +#: src/pages/stock/StockDetail.tsx:804 msgid "Stock Item Actions" msgstr "庫存項操作" -#: src/pages/stock/StockDetail.tsx:874 +#: src/pages/stock/StockDetail.tsx:873 #: src/tables/stock/StockItemTable.tsx:422 msgid "Stale" msgstr "" -#: src/pages/stock/StockDetail.tsx:880 +#: src/pages/stock/StockDetail.tsx:879 #: src/tables/stock/StockItemTable.tsx:416 msgid "Expired" msgstr "" -#: src/pages/stock/StockDetail.tsx:886 +#: src/pages/stock/StockDetail.tsx:885 msgid "Unavailable" msgstr "" @@ -7756,17 +7784,17 @@ msgstr "添加過濾條件" msgid "Clear Filters" msgstr "清除篩選" -#: src/tables/InvenTreeTable.tsx:101 -#: src/tables/InvenTreeTable.tsx:440 -#: src/tables/InvenTreeTable.tsx:468 +#: src/tables/InvenTreeTable.tsx:105 +#: src/tables/InvenTreeTable.tsx:444 +#: src/tables/InvenTreeTable.tsx:472 msgid "No records found" msgstr "沒有找到記錄" -#: src/tables/InvenTreeTable.tsx:214 +#: src/tables/InvenTreeTable.tsx:218 msgid "Failed to load table options" msgstr "" -#: src/tables/InvenTreeTable.tsx:479 +#: src/tables/InvenTreeTable.tsx:483 msgid "Server returned incorrect data type" msgstr "服務器返回了錯誤的數據類型" @@ -7795,6 +7823,10 @@ msgstr "服務器返回了錯誤的數據類型" #~ msgid "Print actions" #~ msgstr "Print actions" +#: src/tables/InvenTreeTable.tsx:647 +msgid "View details" +msgstr "" + #: src/tables/InvenTreeTable.tsx:655 #: src/tables/InvenTreeTable.tsx:656 #~ msgid "Barcode actions"