+ {% set lots = build_request.partLotsForBOMEntry(bom_entry) %}
+ {% if lots is not null %}
+ {% for lot in lots %}
+ {# @var lot \App\Entity\Parts\PartLot #}
+
+
+{{ datatables.datatable(datatable, 'elements/datatables/datatables', 'assemblies') }}
\ No newline at end of file
diff --git a/templates/assemblies/info/_builds.html.twig b/templates/assemblies/info/_builds.html.twig
new file mode 100644
index 00000000..780c8c60
--- /dev/null
+++ b/templates/assemblies/info/_builds.html.twig
@@ -0,0 +1,40 @@
+{% set can_build = buildHelper.assemblyBuildable(assembly) %}
+
+{% import "components/assemblies.macro.html.twig" as assembly_macros %}
+
+{% if assembly.status is not empty and assembly.status != "in_production" %}
+
+ {% trans with {"%assembly_status%": ('assembly.status.'~assembly.status)|trans } %}assembly.builds.check_assembly_status{% endtrans %}
+
+{% endif %}
+
+
+ {% if not can_build %}
+
{% trans %}assembly.builds.build_not_possible{% endtrans %}
+ {% trans %}assembly.builds.following_bom_entries_miss_instock{% endtrans %}
+
+ {% for bom_entry in buildHelper.nonBuildableAssemblyBomEntries(assembly) %}
+
+ {% endif %}
+
+ {% if assembly.comment is not empty %}
+
+
+ {{ assembly.comment|format_markdown }}
+
+
+ {% endif %}
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/templates/assemblies/info/_subassemblies.html.twig b/templates/assemblies/info/_subassemblies.html.twig
new file mode 100644
index 00000000..8c92c5e9
--- /dev/null
+++ b/templates/assemblies/info/_subassemblies.html.twig
@@ -0,0 +1,28 @@
+
+
+
+
{% trans %}name.label{% endtrans %}
+
{% trans %}description.label{% endtrans %}
+
# {% trans %}assembly.info.bom_entries_count{% endtrans %}
+
# {% trans %}assembly.info.sub_assemblies_count{% endtrans %}
+
+
+
+ {% for subassembly in assembly.children %}
+
{% set lots = build_request.partLotsForBOMEntry(bom_entry) %}
+ {% set assemblyBomEntriesWithoutPart = build_request.assemblyBomEntriesWithoutPart(bom_entry) %}
+ {% set assemblyBomEntriesWithPartNoStock = build_request.assemblyBomEntriesWithPartNoStock(bom_entry) %}
{% if lots is not null %}
+ {% set previousLabel = null %}
+
{% for lot in lots %}
{# @var lot \App\Entity\Parts\PartLot #}
+
+ {% set label = '' %}
+ {% if form["lot_"~lot.id].vars.label is defined and form["lot_"~lot.id].vars.label is not empty %}
+ {% set label = form["lot_"~lot.id].vars.label %}
+ {% endif %}
+
+ {% if label != '' and (previousLabel is null or label != previousLabel) %}
+
{% endfor %}
{% endif %}
+ {% if assemblyBomEntriesWithoutPart is not null %}
+ {% for bomEntryWithoutPart in assemblyBomEntriesWithoutPart %}
+
+
+
+
+ / {% trans %}project.builds.no_stock{% endtrans %}
+
+
+ {% endfor %}
+ {% endif %}
+ {% if assemblyBomEntriesWithPartNoStock is not null %}
+ {% for bomEntryWithPartNoStock in assemblyBomEntriesWithPartNoStock %}
+
+
+
+
+
+ / {% trans %}project.builds.no_stock{% endtrans %}
+
+
+
+ {% endfor %}
+ {% endif %}
{% endfor %}
diff --git a/tests/Entity/Attachments/AttachmentTest.php b/tests/Entity/Attachments/AttachmentTest.php
index 00a68d7d..699648eb 100644
--- a/tests/Entity/Attachments/AttachmentTest.php
+++ b/tests/Entity/Attachments/AttachmentTest.php
@@ -24,6 +24,8 @@ namespace App\Tests\Entity\Attachments;
use PHPUnit\Framework\Attributes\DataProvider;
use PHPUnit\Framework\Attributes\Depends;
+use App\Entity\AssemblySystem\Assembly;
+use App\Entity\Attachments\AssemblyAttachment;
use App\Entity\Attachments\Attachment;
use App\Entity\Attachments\AttachmentType;
use App\Entity\Attachments\AttachmentTypeAttachment;
@@ -81,6 +83,7 @@ class AttachmentTest extends TestCase
yield [CategoryAttachment::class, Category::class];
yield [CurrencyAttachment::class, Currency::class];
yield [ProjectAttachment::class, Project::class];
+ yield [AssemblyAttachment::class, Assembly::class];
yield [FootprintAttachment::class, Footprint::class];
yield [GroupAttachment::class, Group::class];
yield [ManufacturerAttachment::class, Manufacturer::class];
diff --git a/tests/Helpers/Assemblies/AssemblyBuildRequestTest.php b/tests/Helpers/Assemblies/AssemblyBuildRequestTest.php
new file mode 100644
index 00000000..210e3301
--- /dev/null
+++ b/tests/Helpers/Assemblies/AssemblyBuildRequestTest.php
@@ -0,0 +1,177 @@
+.
+ */
+namespace App\Tests\Helpers\Assemblies;
+
+use App\Entity\Parts\MeasurementUnit;
+use App\Entity\Parts\Part;
+use App\Entity\Parts\PartLot;
+use App\Entity\AssemblySystem\Assembly;
+use App\Entity\AssemblySystem\AssemblyBOMEntry;
+use App\Helpers\Assemblies\AssemblyBuildRequest;
+use PHPUnit\Framework\TestCase;
+
+class AssemblyBuildRequestTest extends TestCase
+{
+
+ /** @var MeasurementUnit $float_unit */
+ private MeasurementUnit $float_unit;
+
+ /** @var Assembly */
+ private Assembly $assembly1;
+ /** @var AssemblyBOMEntry */
+ private AssemblyBOMEntry $bom_entry1a;
+ /** @var AssemblyBOMEntry */
+ private AssemblyBOMEntry $bom_entry1b;
+ /** @var AssemblyBOMEntry */
+ private AssemblyBOMEntry $bom_entry1c;
+
+ private PartLot $lot1a;
+ private PartLot $lot1b;
+ private PartLot $lot2;
+
+ /** @var Part */
+ private Part $part1;
+ /** @var Part */
+ private Part $part2;
+
+
+ public function setUp(): void
+ {
+ $this->float_unit = new MeasurementUnit();
+ $this->float_unit->setName('float');
+ $this->float_unit->setUnit('f');
+ $this->float_unit->setIsInteger(false);
+ $this->float_unit->setUseSIPrefix(true);
+
+ //Setup some example parts and part lots
+ $this->part1 = new Part();
+ $this->part1->setName('Part 1');
+ $this->lot1a = new class extends PartLot {
+ public function getID(): ?int
+ {
+ return 1;
+ }
+ };
+ $this->part1->addPartLot($this->lot1a);
+ $this->lot1a->setAmount(10);
+ $this->lot1a->setDescription('Lot 1a');
+
+ $this->lot1b = new class extends PartLot {
+ public function getID(): ?int
+ {
+ return 2;
+ }
+ };
+ $this->part1->addPartLot($this->lot1b);
+ $this->lot1b->setAmount(20);
+ $this->lot1b->setDescription('Lot 1b');
+
+ $this->part2 = new Part();
+
+ $this->part2->setName('Part 2');
+ $this->part2->setPartUnit($this->float_unit);
+ $this->lot2 = new PartLot();
+ $this->part2->addPartLot($this->lot2);
+ $this->lot2->setAmount(2.5);
+ $this->lot2->setDescription('Lot 2');
+
+ $this->bom_entry1a = new AssemblyBOMEntry();
+ $this->bom_entry1a->setPart($this->part1);
+ $this->bom_entry1a->setQuantity(2);
+
+ $this->bom_entry1b = new AssemblyBOMEntry();
+ $this->bom_entry1b->setPart($this->part2);
+ $this->bom_entry1b->setQuantity(1.5);
+
+ $this->bom_entry1c = new AssemblyBOMEntry();
+ $this->bom_entry1c->setName('Non-part BOM entry');
+ $this->bom_entry1c->setQuantity(4);
+
+
+ $this->assembly1 = new Assembly();
+ $this->assembly1->setName('Assembly 1');
+ $this->assembly1->addBomEntry($this->bom_entry1a);
+ $this->assembly1->addBomEntry($this->bom_entry1b);
+ $this->assembly1->addBomEntry($this->bom_entry1c);
+ }
+
+ public function testInitialization(): void
+ {
+ //The values should be already prefilled correctly
+ $request = new AssemblyBuildRequest($this->assembly1, 10);
+ //We need totally 20: Take 10 from the first (maximum 10) and 10 from the second (maximum 20)
+ $this->assertEqualsWithDelta(10.0, $request->getLotWithdrawAmount($this->lot1a), PHP_FLOAT_EPSILON);
+ $this->assertEqualsWithDelta(10.0, $request->getLotWithdrawAmount($this->lot1b), PHP_FLOAT_EPSILON);
+
+ //If the needed amount is higher than the maximum, we should get the maximum
+ $this->assertEqualsWithDelta(2.5, $request->getLotWithdrawAmount($this->lot2), PHP_FLOAT_EPSILON);
+ }
+
+ public function testGetNumberOfBuilds(): void
+ {
+ $build_request = new AssemblyBuildRequest($this->assembly1, 5);
+ $this->assertSame(5, $build_request->getNumberOfBuilds());
+ }
+
+ public function testGetAssembly(): void
+ {
+ $build_request = new AssemblyBuildRequest($this->assembly1, 5);
+ $this->assertEquals($this->assembly1, $build_request->getAssembly());
+ }
+
+ public function testGetNeededAmountForBOMEntry(): void
+ {
+ $build_request = new AssemblyBuildRequest($this->assembly1, 5);
+ $this->assertEqualsWithDelta(10.0, $build_request->getNeededAmountForBOMEntry($this->bom_entry1a), PHP_FLOAT_EPSILON);
+ $this->assertEqualsWithDelta(7.5, $build_request->getNeededAmountForBOMEntry($this->bom_entry1b), PHP_FLOAT_EPSILON);
+ $this->assertEqualsWithDelta(20.0, $build_request->getNeededAmountForBOMEntry($this->bom_entry1c), PHP_FLOAT_EPSILON);
+ }
+
+ public function testGetSetLotWithdrawAmount(): void
+ {
+ $build_request = new AssemblyBuildRequest($this->assembly1, 5);
+
+ //We can set the amount for a lot either via the lot object or via the ID
+ $build_request->setLotWithdrawAmount($this->lot1a, 2);
+ $build_request->setLotWithdrawAmount($this->lot1b->getID(), 3);
+
+ //And it should be possible to get the amount via the lot object or via the ID
+ $this->assertEqualsWithDelta(2.0, $build_request->getLotWithdrawAmount($this->lot1a->getID()), PHP_FLOAT_EPSILON);
+ $this->assertEqualsWithDelta(3.0, $build_request->getLotWithdrawAmount($this->lot1b), PHP_FLOAT_EPSILON);
+ }
+
+ public function testGetWithdrawAmountSum(): void
+ {
+ //The sum of all withdraw amounts for an BOM entry (over all lots of the associated part) should be correct
+ $build_request = new AssemblyBuildRequest($this->assembly1, 5);
+
+ $build_request->setLotWithdrawAmount($this->lot1a, 2);
+ $build_request->setLotWithdrawAmount($this->lot1b, 3);
+
+ $this->assertEqualsWithDelta(5.0, $build_request->getWithdrawAmountSum($this->bom_entry1a), PHP_FLOAT_EPSILON);
+ $build_request->setLotWithdrawAmount($this->lot2, 1.5);
+ $this->assertEqualsWithDelta(1.5, $build_request->getWithdrawAmountSum($this->bom_entry1b), PHP_FLOAT_EPSILON);
+ }
+
+
+}
diff --git a/tests/Services/AssemblySystem/AssemblyBuildHelperTest.php b/tests/Services/AssemblySystem/AssemblyBuildHelperTest.php
new file mode 100644
index 00000000..c513ed8d
--- /dev/null
+++ b/tests/Services/AssemblySystem/AssemblyBuildHelperTest.php
@@ -0,0 +1,117 @@
+.
+ */
+namespace App\Tests\Services\AssemblySystem;
+
+use App\Entity\AssemblySystem\Assembly;
+use App\Entity\AssemblySystem\AssemblyBOMEntry;
+use App\Entity\Parts\Part;
+use App\Entity\Parts\PartLot;
+use App\Services\AssemblySystem\AssemblyBuildHelper;
+use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
+
+class AssemblyBuildHelperTest extends WebTestCase
+{
+ /** @var AssemblyBuildHelper */
+ protected $service;
+
+ protected function setUp(): void
+ {
+ self::bootKernel();
+ $this->service = self::getContainer()->get(AssemblyBuildHelper::class);
+ }
+
+ public function testGetMaximumBuildableCountForBOMEntryNonPartBomEntry(): void
+ {
+ $bom_entry = new AssemblyBOMEntry();
+ $bom_entry->setPart(null);
+ $bom_entry->setQuantity(10);
+ $bom_entry->setName('Test');
+
+ $this->expectException(\InvalidArgumentException::class);
+ $this->service->getMaximumBuildableCountForBOMEntry($bom_entry);
+ }
+
+ public function testGetMaximumBuildableCountForBOMEntry(): void
+ {
+ $assembly_bom_entry = new AssemblyBOMEntry();
+ $assembly_bom_entry->setQuantity(10);
+
+ $part = new Part();
+ $lot1 = new PartLot();
+ $lot1->setAmount(120);
+ $lot2 = new PartLot();
+ $lot2->setAmount(5);
+ $part->addPartLot($lot1);
+ $part->addPartLot($lot2);
+
+ $assembly_bom_entry->setPart($part);
+
+ //We have 125 parts in stock, so we can build 12 times the assembly (125 / 10 = 12.5)
+ $this->assertSame(12, $this->service->getMaximumBuildableCountForBOMEntry($assembly_bom_entry));
+
+
+ $lot1->setAmount(0);
+ //We have 5 parts in stock, so we can build 0 times the assembly (5 / 10 = 0.5)
+ $this->assertSame(0, $this->service->getMaximumBuildableCountForBOMEntry($assembly_bom_entry));
+ }
+
+ public function testGetMaximumBuildableCount(): void
+ {
+ $assembly = new Assembly();
+
+ $assembly_bom_entry1 = new AssemblyBOMEntry();
+ $assembly_bom_entry1->setQuantity(10);
+ $part = new Part();
+ $lot1 = new PartLot();
+ $lot1->setAmount(120);
+ $lot2 = new PartLot();
+ $lot2->setAmount(5);
+ $part->addPartLot($lot1);
+ $part->addPartLot($lot2);
+ $assembly_bom_entry1->setPart($part);
+ $assembly->addBomEntry($assembly_bom_entry1);
+
+ $assembly_bom_entry2 = new AssemblyBOMEntry();
+ $assembly_bom_entry2->setQuantity(5);
+ $part2 = new Part();
+ $lot3 = new PartLot();
+ $lot3->setAmount(10);
+ $part2->addPartLot($lot3);
+ $assembly_bom_entry2->setPart($part2);
+ $assembly->addBomEntry($assembly_bom_entry2);
+
+ $assembly->addBomEntry((new AssemblyBOMEntry())->setName('Non part entry')->setQuantity(1));
+
+ //Restricted by the few parts in stock of part2
+ $this->assertSame(2, $this->service->getMaximumBuildableCount($assembly));
+
+ $lot3->setAmount(1000);
+ //Now the build count is restricted by the few parts in stock of part1
+ $this->assertSame(12, $this->service->getMaximumBuildableCount($assembly));
+
+ $lot3->setAmount(0);
+ //Now the build count must be 0, as we have no parts in stock
+ $this->assertSame(0, $this->service->getMaximumBuildableCount($assembly));
+
+ }
+}
diff --git a/tests/Services/AssemblySystem/AssemblyBuildPartHelperTest.php b/tests/Services/AssemblySystem/AssemblyBuildPartHelperTest.php
new file mode 100644
index 00000000..b8aa0ddc
--- /dev/null
+++ b/tests/Services/AssemblySystem/AssemblyBuildPartHelperTest.php
@@ -0,0 +1,52 @@
+.
+ */
+namespace App\Tests\Services\AssemblySystem;
+
+use App\Entity\AssemblySystem\Assembly;
+use App\Services\AssemblySystem\AssemblyBuildPartHelper;
+use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
+
+class AssemblyBuildPartHelperTest extends WebTestCase
+{
+ /** @var AssemblyBuildPartHelper */
+ protected $service;
+
+ protected function setUp(): void
+ {
+ self::bootKernel();
+ $this->service = self::getContainer()->get(AssemblyBuildPartHelper::class);
+ }
+
+ public function testGetPartInitialization(): void
+ {
+ $assembly = new Assembly();
+ $assembly->setName('Assembly 1');
+ $assembly->setDescription('Description 1');
+
+ $part = $this->service->getPartInitialization($assembly);
+ $this->assertSame('Assembly 1', $part->getName());
+ $this->assertSame('Description 1', $part->getDescription());
+ $this->assertSame($assembly, $part->getBuiltAssembly());
+ $this->assertSame($part, $assembly->getBuildPart());
+ }
+}
diff --git a/translations/messages.cs.xlf b/translations/messages.cs.xlf
index 1f234450..8b1f2a62 100644
--- a/translations/messages.cs.xlf
+++ b/translations/messages.cs.xlf
@@ -4741,6 +4741,18 @@ Pokud jste to provedli nesprávně nebo pokud počítač již není důvěryhodn
Název
+
+
+ project.bom.assembly
+ Sestava
+
+
+
+
+ project.bom.partOrAssembly
+ Výběr
+
+ Part-DB1\src\DataTables\PartsDataTable.php:178
@@ -9786,6 +9798,18 @@ Element 3
Díl
+
+
+ project.bom.assembly
+ Baugruppe
+
+
+
+
+ project.bom.partOrAssembly
+ Auswahl
+
+ project.bom.add_entry
@@ -9864,6 +9888,42 @@ Element 3
Archivováno
+
+
+ assembly.edit.status
+ Stav
+
+
+
+
+ assembly.status.draft
+ Návrh
+
+
+
+
+ assembly.status.planning
+ Plánování
+
+
+
+
+ assembly.status.in_production
+ Ve výrobě
+
+
+
+
+ assembly.status.finished
+ Dokončeno
+
+
+
+
+ assembly.status.archived
+ Archivováno
+
+ part.new_build_part.error.build_part_already_exists
@@ -10140,6 +10200,12 @@ Element 3
k dispozici
+
+
+ project.builds.no_stock
+ není uveden žádný sklad
+
+ project.builds.needed
@@ -10212,6 +10278,12 @@ Element 3
Cílový inventář
+
+
+ project.build.builds_part_lot_label
+ %name% (%quantity% požadováno)
+
+ project.builds.number_of_builds
@@ -13479,5 +13551,633 @@ Vezměte prosím na vědomí, že se nemůžete vydávat za uživatele se zakáz
Minimální šířka náhledu (px)
+
+
+ part.table.name.value.for_part
+ %value% (Součást)
+
+
+
+
+ part.table.name.value.for_assembly
+ %value% (Sestava)
+
+
+
+
+ assembly.label
+ Sestava
+
+
+
+
+ assembly.caption
+ Sestava
+
+
+
+
+ perm.assemblies
+ Sestavy
+
+
+
+
+ assembly_bom_entry.label
+ Součásti
+
+
+
+
+ assembly.labelp
+ Sestavy
+
+
+
+
+ assembly.edit
+ Upravit sestavu
+
+
+
+
+ assembly.new
+ Nová sestava
+
+
+
+
+ assembly.edit.associated_build_part
+ Přidružená součást
+
+
+
+
+ assembly.edit.associated_build_part.add
+ Přidat součást
+
+
+
+
+ assembly.edit.associated_build.hint
+ Tato součást představuje vyrobené instance sestavy. Zadejte, pokud jsou vyrobené instance potřeba. Pokud ne, počet součástí bude použit až při sestavení daného projektu.
+
+
+
+
+ assembly.edit.bom.import_bom
+ Importovat součásti
+
+
+
+
+ log.database_updated.failed
+ __log.database_updated.failed
+
+
+
+
+ log.database_updated.old_version
+ __log.database_updated.old_version
+
+
+
+
+ log.database_updated.new_version
+ __log.database_updated.new_version
+
+
+
+
+ tree.tools.edit.assemblies
+ Sestavy
+
+
+
+
+ assembly.bom_import.flash.success
+ %count% součástí úspěšně importováno do sestavy.
+
+
+
+
+ assembly.bom_import.flash.invalid_entries
+ Chyba ověření! Zkontrolujte svůj importovaný soubor!
+
+
+
+
+ assembly.bom_import.flash.invalid_file
+ Soubor nelze importovat. Zkontrolujte, zda jste vybrali správný typ souboru. Chybová zpráva: %message%
+
+
+
+
+ assembly.bom.quantity
+ Množství
+
+
+
+
+ assembly.bom.mountnames
+ Názvy osazení
+
+
+
+
+ assembly.bom.instockAmount
+ Stav na skladě
+
+
+
+
+ assembly.info.title
+ Info o sestavě
+
+
+
+
+ assembly.info.info.label
+ Informace
+
+
+
+
+ assembly.info.sub_assemblies.label
+ Podskupina
+
+
+
+
+ assembly.info.builds.label
+ Sestavení
+
+
+
+
+ assembly.info.bom_add_parts
+ Přidat součásti
+
+
+
+
+ assembly.builds.check_assembly_status
+ "%assembly_status%". Měli byste zkontrolovat, zda opravdu chcete sestavu postavit s tímto stavem!]]>
+
+
+
+
+ assembly.builds.build_not_possible
+ Sestavení není možné: Nedostatek součástí
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock
+ Není dostatek součástí na skladě pro postavení tohoto projektu %number_of_builds% krát. Následující součásti nejsou skladem v dostatečném množství.
+
+
+
+
+ assembly.builds.build_possible
+ Sestavení je možné
+
+
+
+
+ assembly.builds.number_of_builds_possible
+ %max_builds% kusů této sestavy.]]>
+
+
+
+
+ assembly.builds.number_of_builds
+ Počet sestavení
+
+
+
+
+ assembly.build.btn_build
+ Sestavit
+
+
+
+
+ assembly.builds.no_stocked_builds
+ Počet skladovaných vyrobených instancí
+
+
+
+
+ assembly.info.bom_entries_count
+ Součásti
+
+
+
+
+ assembly.info.sub_assemblies_count
+ Podskupiny
+
+
+
+
+ assembly.builds.stocked
+ skladem
+
+
+
+
+ assembly.builds.needed
+ potřebné
+
+
+
+
+ assembly.add_parts_to_assembly
+ Přidat součásti do sestavy
+
+
+
+
+ assembly.bom.name
+ Název
+
+
+
+
+ assembly.bom.comment
+ Poznámky
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock_n
+ Není dostatek součástí na skladě pro sestavení této sestavy %number_of_builds% krát. Následující součásti nejsou skladem:
+
+
+
+
+ assembly.build.help
+ Vyberte, ze kterých zásob se mají brát potřebné součásti pro sestavení (a v jakém množství). Zaškrtněte políčko u každého dílu, pokud jste jej odebrali, nebo použijte horní políčko k výběru všech naráz.
+
+
+
+
+ assembly.build.required_qty
+ Požadované množství
+
+
+
+
+ assembly.import_bom
+ Importovat součásti do sestavy
+
+
+
+
+ assembly.bom.part
+ Součást
+
+
+
+
+ assembly.bom.add_entry
+ Přidat položku
+
+
+
+
+ assembly.bom.price
+ Cena
+
+
+
+
+ assembly.build.dont_check_quantity
+ Neověřovat množství
+
+
+
+
+ assembly.build.dont_check_quantity.help
+ Pokud je tato volba vybrána, budou vybraná množství odstraněna ze skladu bez ohledu na to, zda je méně nebo více součástí, než je skutečně potřeba pro sestavení sestavy.
+
+
+
+
+ assembly.build.add_builds_to_builds_part
+ Přidat vyrobené instance do součásti sestavy
+
+
+
+
+ assembly.bom_import.type
+ Typ
+
+
+
+
+ assembly.bom_import.type.json
+ JSON pro sestavu
+
+
+
+
+ assembly.bom_import.type.kicad_pcbnew
+ CSV (KiCAD Pcbnew BOM)
+
+
+
+
+ assembly.bom_import.clear_existing_bom
+ Smazat existující položky před importem
+
+
+
+
+ assembly.bom_import.clear_existing_bom.help
+ Pokud je tato možnost vybrána, budou všechny již existující součásti sestavy smazány a nahrazeny importovanými daty součástí.
+
+
+
+
+ assembly.import_bom.template.header.json
+ Šablona importu JSON pro sestavu
+
+
+
+
+ assembly.import_bom.template.header.kicad_pcbnew
+ Šablona importu CSV (KiCAD Pcbnew BOM) pro sestavu
+
+
+
+
+ assembly.bom_import.template.entry.name
+ Název součásti v sestavě
+
+
+
+
+ assembly.bom_import.template.entry.part.mpnr
+ Unikátní číslo produktu u výrobce
+
+
+
+
+ assembly.bom_import.template.entry.part.ipn
+ Unikátní IPN součásti
+
+
+
+
+ assembly.bom_import.template.entry.part.name
+ Unikátní název součásti
+
+
+
+
+ assembly.bom_import.template.entry.part.manufacturer.name
+ Unikátní jméno výrobce
+
+
+
+
+ assembly.bom_import.template.entry.part.category.name
+ Unikátní název kategorie
+
+
+
+
+ assembly.bom_import.template.json.table
+
+
+
+
+
Pole
+
Podmínka
+
Datový typ
+
Popis
+
+
+
+
+
quantity
+
Povinné
+
Číslo s plovoucí desetinnou čárkou (Float)
+
Musí být uvedeno a obsahovat hodnotu s plovoucí desetinnou čárkou (Float) větší než 0,0.
+
+
+
name
+
Volitelné
+
Řetězec (String)
+
Pokud je přítomen, musí být neprázdný řetězec.
+
+
+
part
+
Volitelné
+
Objekt/Array
+
+ Pokud je uvedeno, musí to být objekt/array a minimálně jedno pole musí být vyplněno:
+
+
part.id
+
part.name
+
+
+
+
+
part.id
+
Volitelné
+
Celé číslo (Integer)
+
Celé číslo (Integer) > 0. Odpovídá internímu číselnému ID součástky v Part-DB.
+
+
+
part.name
+
Volitelné
+
Řetězec (String)
+
Neprázdný řetězec, pokud není zadáno part.mpnr nebo part.ipn.
+
+
+
part.mpnr
+
Volitelné
+
Řetězec (String)
+
Neprázdný řetězec, pokud není zadáno part.name nebo part.ipn.
+
+
+
part.ipn
+
Volitelné
+
Řetězec (String)
+
Neprázdný řetězec, pokud není zadáno part.name nebo part.mpnr.
+
+
+
part.description
+
Volitelné
+
Řetězec nebo null
+
Pokud je přítomen, musí být neprázdný řetězec nebo null.
+
+
+
part.manufacturer
+
Volitelné
+
Objekt/Array
+
+ Pokud je přítomen, musí to být objekt/array a minimálně jedno pole musí být vyplněno:
+
+
manufacturer.id
+
manufacturer.name
+
+
+
+
+
manufacturer.id
+
Volitelné
+
Celé číslo (Integer)
+
Celé číslo (Integer) > 0. Odpovídá internímu číselnému ID výrobce.
+
+
+
manufacturer.name
+
Volitelné
+
Řetězec (String)
+
Neprázdný řetězec, pokud není uvedeno manufacturer.id.
+
+
+
part.category
+
Volitelné
+
Objekt/Array
+
+ Pokud je přítomen, musí to být objekt/array a minimálně jedno pole musí být vyplněno:
+
+
category.id
+
category.name
+
+
+
+
+
category.id
+
Volitelné
+
Celé číslo (Integer)
+
Celé číslo (Integer) > 0. Odpovídá internímu číselnému ID kategorie součástky.
+
+
+
category.name
+
Volitelné
+
Řetězec (String)
+
Neprázdný řetězec, pokud není uvedeno category.id.
Volný údaj. Jedinečné identifikační číslo pro každou součástku.
+
+
+
Designator
+
Volitelný
+
Řetězec (String)
+
Volný údaj. Jedinečný referenční označovač součástky na desce plošných spojů, např. „R1“ pro rezistor 1. Používá se pro název osazení součástky v rámci skupiny součástek.
+
+
+
Package
+
Volitelný
+
Řetězec (String)
+
Volný údaj. Pouzdro nebo tvar součástky, např. „0805“ pro SMD rezistory.
+
+
+
Množství
+
Povinný
+
Celé číslo (Integer)
+
Počet identických součástek, které jsou potřeba k vytvoření jedné instance sestavy.
+
+
+
Určení
+
Povinný
+
Řetězec (String)
+
Popis nebo funkce součástky, např. hodnota rezistoru „10kΩ“ nebo hodnota kondenzátoru „100nF“. Používá se pro název položky v BOM.
+
+
+
Dodavatel a ref
+
Volitelný
+
Řetězec (String)
+
Volný údaj. Může obsahovat např. specifické údaje distributora.
+
+
+
+ ]]>
+
+
+
+
+
+ typeahead.parts.part.name
+ %name% (součást)
+
+
+
+
+ typeahead.parts.assembly.name
+ %name% (sestava)
+
+
+
+
+ projects.build.form.part
+ Součást "%name%"
+
+
+
+
+ projects.build.form.assembly
+ Sestava "%name%"
+
+
+
+
+ projects.build.form.assembly.bom.entry
+ %name% (potřebné množství: %quantity%)
+
+
+
+
+ projects.build.form.assembly.bom.entry.no.stock
+ není skladem
+
+
diff --git a/translations/messages.da.xlf b/translations/messages.da.xlf
index d7258986..f231163a 100644
--- a/translations/messages.da.xlf
+++ b/translations/messages.da.xlf
@@ -4748,6 +4748,18 @@ Bemærk også, at uden to-faktor-godkendelse er din konto ikke længere så godt
Navn
+
+
+ project.bom.assembly
+ Montering
+
+
+
+
+ project.bom.partOrAssembly
+ Valg
+
+ Part-DB1\src\DataTables\PartsDataTable.php:178
@@ -9812,6 +9824,18 @@ Element 3
Komponent
+
+
+ project.bom.assembly
+ Baugruppe
+
+
+
+
+ project.bom.partOrAssembly
+ Auswahl
+
+ project.bom.add_entry
@@ -9890,6 +9914,42 @@ Element 3
Arkiveret
+
+
+ assembly.edit.status
+ Status
+
+
+
+
+ assembly.status.draft
+ Kladde
+
+
+
+
+ assembly.status.planning
+ Under planlægning
+
+
+
+
+ assembly.status.in_production
+ I produktion
+
+
+
+
+ assembly.status.finished
+ Ophørt
+
+
+
+
+ assembly.status.archived
+ Arkiveret
+
+ part.new_build_part.error.build_part_already_exists
@@ -10166,6 +10226,12 @@ Element 3
På lager
+
+
+ project.builds.no_stock
+ intet lager angivet
+
+ project.builds.needed
@@ -10238,6 +10304,12 @@ Element 3
Mål mængde
+
+
+ project.build.builds_part_lot_label
+ %name% (%quantity% påkrævet)
+
+ project.builds.number_of_builds
@@ -12196,5 +12268,633 @@ Bemærk venligst, at du ikke kan kopiere fra deaktiveret bruger. Hvis du prøver
Du forsøgte at fjerne/tilføje en mængde sat til nul! Der blev ikke foretaget nogen handling.
+
+
+ part.table.name.value.for_part
+ %value% (Del)
+
+
+
+
+ part.table.name.value.for_assembly
+ %value% (Samlingsenhed)
+
+
+
+
+ assembly.label
+ Samling
+
+
+
+
+ assembly.caption
+ Samling
+
+
+
+
+ perm.assemblies
+ Samlinger
+
+
+
+
+ assembly_bom_entry.label
+ Komponenter
+
+
+
+
+ assembly.labelp
+ Samlinger
+
+
+
+
+ assembly.edit
+ Rediger samling
+
+
+
+
+ assembly.new
+ Ny samling
+
+
+
+
+ assembly.edit.associated_build_part
+ Tilknyttet komponent
+
+
+
+
+ assembly.edit.associated_build_part.add
+ Tilføj komponent
+
+
+
+
+ assembly.edit.associated_build.hint
+ Denne komponent repræsenterer de fremstillede instanser af samlingen. Angiv, hvis fremstillede instanser er påkrævet. Hvis ikke, vil antallet af komponenter først blive anvendt ved opbygning af det pågældende projekt.
+
+
+
+
+ assembly.edit.bom.import_bom
+ Importér komponenter
+
+
+
+
+ log.database_updated.failed
+ __log.database_updated.failed
+
+
+
+
+ log.database_updated.old_version
+ __log.database_updated.old_version
+
+
+
+
+ log.database_updated.new_version
+ __log.database_updated.new_version
+
+
+
+
+ tree.tools.edit.assemblies
+ Samlinger
+
+
+
+
+ assembly.bom_import.flash.success
+ %count% komponent(er) blev importeret til samlingen med succes.
+
+
+
+
+ assembly.bom_import.flash.invalid_entries
+ Valideringsfejl! Kontroller venligst den importerede fil!
+
+
+
+
+ assembly.bom_import.flash.invalid_file
+ Filen kunne ikke importeres. Kontrollér, at du har valgt den korrekte filtype. Fejlmeddelelse: %message%
+
+
+
+
+ assembly.bom.quantity
+ Mængde
+
+
+
+
+ assembly.bom.mountnames
+ Monteringsnavne
+
+
+
+
+ assembly.bom.instockAmount
+ Antal på lager
+
+
+
+
+ assembly.info.title
+ Samleinfo
+
+
+
+
+ assembly.info.info.label
+ Info
+
+
+
+
+ assembly.info.sub_assemblies.label
+ Undergruppe
+
+
+
+
+ assembly.info.builds.label
+ Byggeri
+
+
+
+
+ assembly.info.bom_add_parts
+ Tilføj dele
+
+
+
+
+ assembly.builds.check_assembly_status
+ "%assembly_status%". Du bør kontrollere, om du virkelig ønsker at bygge samlingen med denne status!]]>
+
+
+
+
+ assembly.builds.build_not_possible
+ Opbygning ikke mulig: Ikke nok komponenter til rådighed
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock
+ Der er ikke nok dele på lager til at bygge dette projekt %number_of_builds% gange. Følgende dele mangler på lager:
+
+
+
+
+ assembly.builds.build_possible
+ Byggeri muligt
+
+
+
+
+ assembly.builds.number_of_builds_possible
+ %max_builds% eksemplarer af denne samling.]]>
+
+
+
+
+ assembly.builds.number_of_builds
+ Antal opbygninger
+
+
+
+
+ assembly.build.btn_build
+ Byg
+
+
+
+
+ assembly.builds.no_stocked_builds
+ Antal lagrede byggede enheder
+
+
+
+
+ assembly.info.bom_entries_count
+ Komponenter
+
+
+
+
+ assembly.info.sub_assemblies_count
+ Undergrupper
+
+
+
+
+ assembly.builds.stocked
+ på lager
+
+
+
+
+ assembly.builds.needed
+ nødvendig
+
+
+
+
+ assembly.add_parts_to_assembly
+ Tilføj dele til samlingen
+
+
+
+
+ assembly.bom.name
+ Navn
+
+
+
+
+ assembly.bom.comment
+ Notater
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock_n
+ Der er ikke nok dele på lager til at bygge denne samling %number_of_builds% gange. Følgende dele mangler på lager:
+
+
+
+
+ assembly.build.help
+ Vælg, hvilke lagre de nødvendige dele til bygningen skal tages fra (og i hvilken mængde). Marker afkrydsningsfeltet for hver delpost, når du har fjernet delene, eller brug det øverste afkrydsningsfelt for at markere alle på én gang.
+
+
+
+
+ assembly.build.required_qty
+ Krævet antal
+
+
+
+
+ assembly.import_bom
+ Importer dele til samling
+
+
+
+
+ assembly.bom.part
+ Del
+
+
+
+
+ assembly.bom.add_entry
+ Tilføj post
+
+
+
+
+ assembly.bom.price
+ Pris
+
+
+
+
+ assembly.build.dont_check_quantity
+ Tjek ikke mængder
+
+
+
+
+ assembly.build.dont_check_quantity.help
+ Hvis denne mulighed vælges, fjernes de valgte mængder fra lageret, uanset om der er mere eller mindre end nødvendigt for at bygge samlingen.
+
+
+
+
+ assembly.build.add_builds_to_builds_part
+ Tilføj byggede enheder til assemblies del
+
+
+
+
+ assembly.bom_import.type
+ Type
+
+
+
+
+ assembly.bom_import.type.json
+ JSON for en samling
+
+
+
+
+ assembly.bom_import.type.kicad_pcbnew
+ CSV (KiCAD Pcbnew BOM)
+
+
+
+
+ assembly.bom_import.clear_existing_bom
+ Slet eksisterende poster før import
+
+
+
+
+ assembly.bom_import.clear_existing_bom.help
+ Hvis dette valg er markeret, slettes alle eksisterende komponentposter i samlingen og erstattes med de importerede.
+
+
+
+
+ assembly.import_bom.template.header.json
+ JSON-importskabelon til en samling
+
+
+
+
+ assembly.import_bom.template.header.kicad_pcbnew
+ Importskabelon CSV (KiCAD Pcbnew BOM) til en samling
+
+
+
+
+ assembly.bom_import.template.entry.name
+ Delens navn i samlingen
+
+
+
+
+ assembly.bom_import.template.entry.part.mpnr
+ Unik produktnummer hos producenten
+
+
+
+
+ assembly.bom_import.template.entry.part.ipn
+ Unik IPN for delen
+
+
+
+
+ assembly.bom_import.template.entry.part.name
+ Unikt komponentnavn
+
+
+
+
+ assembly.bom_import.template.entry.part.manufacturer.name
+ Unikt producenter navn
+
+
+
+
+ assembly.bom_import.template.entry.part.category.name
+ Kategoriens unikke navn
+
+
+
+
+ assembly.bom_import.template.json.table
+
+
+
+
+
Felt
+
Betingelse
+
Datatype
+
Beskrivelse
+
+
+
+
+
quantity
+
Påkrævet
+
Flydende tal (Float)
+
Skal være til stede og indeholde en flydende værdi (Float), der er større end 0,0.
+
+
+
name
+
Valgfri
+
String
+
Hvis til stede, skal det være en ikke-tom streng.
+
+
+
part
+
Valgfri
+
Objekt/Array
+
+ Hvis angivet, skal det være et objekt/array, og mindst ét af felterne skal udfyldes:
+
+
part.id
+
part.name
+
+
+
+
+
part.id
+
Valgfri
+
Heltal (Integer)
+
Heltal (Integer) > 0. Matcher Part-DB's interne numeriske ID for komponenten.
+
+
+
part.name
+
Valgfri
+
String
+
Ikke-tom streng, hvis part.mpnr eller part.ipn ikke er givet.
+
+
+
part.mpnr
+
Valgfri
+
String
+
Ikke-tom streng, hvis part.name eller part.ipn ikke er givet.
+
+
+
part.ipn
+
Valgfri
+
String
+
Ikke-tom streng, hvis part.name eller part.mpnr ikke er givet.
+
+
+
part.description
+
Valgfri
+
String eller null
+
Hvis til stede, skal det være en ikke-tom streng eller null.
+
+
+
part.manufacturer
+
Valgfri
+
Objekt/Array
+
+ Hvis til stede, skal det være et objekt/array, og mindst ét af felterne skal udfyldes:
+
Fri oplysning. Et unikt identifikationsnummer for hver komponent.
+
+
+
Designator
+
Valgfri
+
Streng
+
Fri oplysning. En unik referencebetegnelse for komponenten på printkortet, f.eks. "R1" for modstand 1. Bruges til navngivning af monteringssæt i komponentgruppen.
+
+
+
Package
+
Valgfri
+
Streng
+
Fri oplysning. Komponentenheden eller -formatet, f.eks. "0805" for SMD-modstande.
+
+
+
Antal
+
Påkrævet
+
Heltal (Integer)
+
Antallet af identiske komponenter, der kræves for at oprette en enkelt instans af samling.
+
+
+
Betegnelse
+
Påkrævet
+
Streng
+
Beskrivelse eller funktion for komponenten, f.eks. modstandsværdi "10kΩ" eller kondensatorværdi "100nF". Bruges til navnet i BOM-posten.
+
+
+
Leverandør og ref
+
Valgfri
+
Streng
+
Fri oplysning. Kan indeholde f.eks. distributørspecifik værdi.
+
+
+
+ ]]>
+
+
+
+
+
+ typeahead.parts.part.name
+ %name% (del)
+
+
+
+
+ typeahead.parts.assembly.name
+ %name% (samling)
+
+
+
+
+ projects.build.form.part
+ Del "%name%"
+
+
+
+
+ projects.build.form.assembly
+ Samling "%name%"
+
+
+
+
+ projects.build.form.assembly.bom.entry
+ %name% (%quantity% nødvendig)
+
+
+
+
+ projects.build.form.assembly.bom.entry.no.stock
+ ikke på lager
+
+
diff --git a/translations/messages.de.xlf b/translations/messages.de.xlf
index 06326a21..37fb8b0d 100644
--- a/translations/messages.de.xlf
+++ b/translations/messages.de.xlf
@@ -4740,6 +4740,18 @@ Wenn Sie dies fehlerhafterweise gemacht haben oder ein Computer nicht mehr vertr
Name
+
+
+ part.table.name.value.for_part
+ %value% (Bauteil)
+
+
+
+
+ part.table.name.value.for_assembly
+ %value% (Baugruppe)
+
+ Part-DB1\src\DataTables\PartsDataTable.php:178
@@ -9860,6 +9872,18 @@ Element 1 -> Element 1.2
Bauteil
+
+
+ project.bom.assembly
+ Baugruppe
+
+
+
+
+ project.bom.partOrAssembly
+ Auswahl
+
+ project.bom.add_entry
@@ -9938,6 +9962,42 @@ Element 1 -> Element 1.2
Archiviert
+
+
+ assembly.edit.status
+ Status
+
+
+
+
+ assembly.status.draft
+ Entwurf
+
+
+
+
+ assembly.status.planning
+ In Planung
+
+
+
+
+ assembly.status.in_production
+ In Produktion
+
+
+
+
+ assembly.status.finished
+ Abgeschlossen
+
+
+
+
+ assembly.status.archived
+ Archiviert
+
+ part.new_build_part.error.build_part_already_exists
@@ -10214,6 +10274,12 @@ Element 1 -> Element 1.2
vorhanden
+
+
+ project.builds.no_stock
+ kein Lager angegeben
+
+ project.builds.needed
@@ -10286,6 +10352,12 @@ Element 1 -> Element 1.2
Ziel-Bestand
+
+
+ project.build.builds_part_lot_label
+ %name% (%quantity% benötigt)
+
+ project.builds.number_of_builds
@@ -12929,6 +13001,622 @@ Bitte beachten Sie, dass Sie sich nicht als deaktivierter Benutzer ausgeben kön
Externe Version anzeigen
+
+
+ assembly.label
+ Baugruppe
+
+
+
+
+ assembly.caption
+ Baugruppe
+
+
+
+
+ perm.assemblies
+ Baugruppen
+
+
+
+
+ assembly_bom_entry.label
+ Bauteile
+
+
+
+
+ assembly.labelp
+ Baugruppen
+
+
+
+
+ assembly.edit
+ Bearbeite Baugruppe
+
+
+
+
+ assembly.new
+ Neue Baugruppe
+
+
+
+
+ assembly.edit.associated_build_part
+ Verknüpftes Bauteil
+
+
+
+
+ assembly.edit.associated_build_part.add
+ Bauteil hinzufügen
+
+
+
+
+ assembly.edit.associated_build.hint
+ Dieses Bauteil repräsentiert die gebauten Instanzen der Baugruppe. Anzugeben, sofern gebaute Instanzen benötigt werden. Wenn nein, werden die Stückzahlen bzgl. der Baugruppe erst beim Build des jeweiligen Projektes herangezogen.
+
+
+
+
+ assembly.edit.bom.import_bom
+ Bauteile importieren
+
+
+
+
+ log.database_updated.failed
+ __log.database_updated.failed
+
+
+
+
+ log.database_updated.old_version
+ __log.database_updated.old_version
+
+
+
+
+ log.database_updated.new_version
+ __log.database_updated.new_version
+
+
+
+
+ tree.tools.edit.assemblies
+ Baugruppen
+
+
+
+
+ assembly.bom_import.flash.success
+ %count% Part Einträge erfolgreich in Baugruppe importiert.
+
+
+
+
+ assembly.bom_import.flash.invalid_entries
+ Validierungsfehler! Bitte überprüfen Sie die importierte Datei!
+
+
+
+
+ assembly.bom_import.flash.invalid_file
+ Datei konnte nicht importiert werden. Überprüfen Sie, dass Sie den richtigen Dateityp gewählt haben. Fehlermeldung: %message%
+
+
+
+
+ assembly.bom.quantity
+ Menge
+
+
+
+
+ assembly.bom.mountnames
+ Bestückungsnamen
+
+
+
+
+ assembly.bom.instockAmount
+ Bestand im Lager
+
+
+
+
+ assembly.info.title
+ Baugruppen-Info
+
+
+
+
+ assembly.info.info.label
+ Info
+
+
+
+
+ assembly.info.sub_assemblies.label
+ Untergruppe
+
+
+
+
+ assembly.info.builds.label
+ Bau
+
+
+
+
+ assembly.info.bom_add_parts
+ Bauteile hinzufügen
+
+
+
+
+ assembly.builds.check_assembly_status
+ "%assembly_status%". Sie sollten überprüfen, ob sie die Baugruppe mit diesem Status wirklich bauen wollen!]]>
+
+
+
+
+ assembly.builds.build_not_possible
+ Bau nicht möglich: Nicht genügend Bauteile vorhanden
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock
+ Es sind nicht genügend Bauteile auf Lager, um dieses Projekt %number_of_builds% mal zu bauen. Von folgenden Bauteilen ist nicht genügend auf Lager.
+
+
+
+
+ assembly.builds.build_possible
+ Bau möglich
+
+
+
+
+ assembly.builds.number_of_builds_possible
+ %max_builds% Exemplare dieser Baugruppe zu bauen.]]>
+
+
+
+
+ assembly.builds.number_of_builds
+ Zu bauende Anzahl
+
+
+
+
+ assembly.build.btn_build
+ Bauen
+
+
+
+
+ assembly.builds.no_stocked_builds
+ Anzahl gelagerter gebauter Instanzen
+
+
+
+
+ assembly.info.bom_entries_count
+ Bauteile
+
+
+
+
+ assembly.info.sub_assemblies_count
+ Untergruppen
+
+
+
+
+ assembly.builds.stocked
+ vorhanden
+
+
+
+
+ assembly.builds.needed
+ benötigt
+
+
+
+
+ assembly.add_parts_to_assembly
+ Bauteile zur Baugruppe hinzufügen
+
+
+
+
+ assembly.bom.name
+ Name
+
+
+
+
+ assembly.bom.comment
+ Notizen
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock_n
+ Es sind nicht genügend Bauteile auf Lager, um diese Baugruppe %number_of_builds% mal zu bauen. Von folgenden Bauteilen ist nicht genügend auf Lager:
+
+
+
+
+ assembly.build.help
+ Wählen Sie aus, aus welchen Beständen die zum Bau notwendigen Bauteile genommen werden sollen (und in welcher Anzahl). Setzen Sie den Haken für jeden Part Eintrag, wenn sie die Bauteile entnommen haben, oder nutzen Sie die oberste Checkbox, um alle Haken auf einmal zu setzen.
+
+
+
+
+ assembly.build.required_qty
+ Benötigte Anzahl
+
+
+
+
+ assembly.import_bom
+ Importiere Parts für Baugruppe
+
+
+
+
+ assembly.bom.part
+ Bauteil
+
+
+
+
+ assembly.bom.add_entry
+ Eintrag hinzufügen
+
+
+
+
+ assembly.bom.price
+ Preis
+
+
+
+
+ assembly.build.dont_check_quantity
+ Mengen nicht überprüfen
+
+
+
+
+ assembly.build.dont_check_quantity.help
+ Wenn diese Option gewählt wird, werden die gewählten Mengen aus dem Lager entfernt, egal ob mehr oder weniger Bauteile sind, als für den Bau der Baugruppe eigentlich benötigt werden.
+
+
+
+
+ assembly.build.add_builds_to_builds_part
+ Gebaute Instanzen zum Bauteil der Baugruppe hinzufügen
+
+
+
+
+ assembly.bom_import.type
+ Typ
+
+
+
+
+ assembly.bom_import.type.json
+ JSON für eine Baugruppe
+
+
+
+
+ assembly.bom_import.type.kicad_pcbnew
+ CSV (KiCAD Pcbnew BOM)
+
+
+
+
+ assembly.bom_import.clear_existing_bom
+ Lösche existierende Bauteil-Einträge vor dem Import
+
+
+
+
+ assembly.bom_import.clear_existing_bom.help
+ Wenn diese Option ausgewählt ist, werden alle bereits in der Baugruppe existierenden Bauteile gelöscht und mit den importierten Bauteildaten überschrieben.
+
+
+
+
+ assembly.import_bom.template.header.json
+ Import-Vorlage JSON für eine Baugruppe
+
+
+
+
+ assembly.import_bom.template.header.kicad_pcbnew
+ Import-Vorlage CSV (KiCAD Pcbnew BOM) für eine Baugruppe
+
+
+
+
+ assembly.bom_import.template.entry.name
+ Name des Bauteils in der Baugruppe
+
+
+
+
+ assembly.bom_import.template.entry.part.mpnr
+ Eindeutige Produktnummer innerhalb des Herstellers
+
+
+
+
+ assembly.bom_import.template.entry.part.ipn
+ Eideutige IPN des Bauteils
+
+
+
+
+ assembly.bom_import.template.entry.part.name
+ Eindeutiger Name des Bauteils
+
+
+
+
+ assembly.bom_import.template.entry.part.manufacturer.name
+ Eindeutiger Name des Herstellers
+
+
+
+
+ assembly.bom_import.template.entry.part.category.name
+ Eindeutiger Name der Kategorie
+
+
+
+
+ assembly.bom_import.template.json.table
+
+
+
+
+
Feld
+
Bedingung
+
Datentyp
+
Beschreibung
+
+
+
+
+
quantity
+
Pflichtfeld
+
Gleitkommazahl (Float)
+
Muss gegeben sein und enthält einen Gleitkommawert (Float), der größer als 0.0 ist.
+
+
+
name
+
Optional
+
String
+
Falls vorhanden, muss es ein nicht-leerer String sein.
+
+
+
part
+
Optional
+
Objekt/Array
+
+ Falls angegeben, muss es ein Objekt/Array sein und mindestens eines der Felder ausgefüllt sein:
+
+
part.id
+
part.name
+
+
+
+
+
part.id
+
Optional
+
Ganzzahl (Integer)
+
Ganzzahl (Integer) > 0. Entspricht der Part-DB internen numerischen ID des Bauteils.
+
+
+
part.name
+
Optional
+
String
+
Nicht-leerer String, falls keine part.mpnr- bzw. part.ipn-Angabe gegeben ist.
+
+
+
part.mpnr
+
Optional
+
String
+
Nicht-leerer String, falls keine part.name- bzw. part-ipn-Angabe gegeben ist.
+
+
+
part.ipn
+
Optional
+
String
+
Nicht-leerer String, falls keine part.name- bzw. part.mpnr-Angabe gegeben ist.
+
+
+
part.description
+
Optional
+
String oder null
+
Falls vorhanden, muss es ein nicht-leerer String sein oder null.
+
+
+
part.manufacturer
+
Optional
+
Objekt/Array
+
+ Falls vorhanden, muss es ein Objekt/Array sein und mindestens eines der Felder ausgefüllt sein:
+
+
manufacturer.id
+
manufacturer.name
+
+
+
+
+
manufacturer.id
+
Optional
+
Ganzzahl (Integer)
+
Ganzzahl (Integer) > 0. Entspricht der internen numerischen ID des Herstellers.
+
+
+
manufacturer.name
+
Optional
+
String
+
Nicht-leerer String, falls keine manufacturer.id-Angabe gegeben ist.
+
+
+
part.category
+
Optional
+
Objekt/Array
+
+ Falls vorhanden, muss es ein Objekt/Array sein und mindestens eines der Felder ausgefüllt sein:
+
+
category.id
+
category.name
+
+
+
+
+
category.id
+
Optional
+
Ganzzahl (Integer)
+
Ganzzahl (Integer) > 0. Entspricht der internen numerischen ID der Kategorie des Bauteils.
+
+
+
category.name
+
Optional
+
String
+
Nicht-leerer String, falls keine category.id-Angabe gegeben ist.
+
+
+
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns
+ Erwartete Spalten:
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns.note
+
+ Hinweis: Es findet keine Zuordnung zu konkreten Bauteilen aus der Kategorie-Verwaltung statt.
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.table
+
+
+
+
+
Feld
+
Bedingung
+
Datentyp
+
Beschreibung
+
+
+
+
+
Id
+
Optional
+
Ganzzahl (Integer)
+
Offene Angabe. Eine eindeutige Identifikationsnummer für jedes Bauteil.
+
+
+
Designator
+
Optional
+
String
+
Offene Angabe. Ein eindeutiger Referenzbezeichner des Bauteils auf der Leiterplatte, z.B. „R1“ für Widerstand 1. Wird für den Bestückungsnamen des Bauteil-Eintrags innerhalb der Bauteilgruppe verwendet.
+
+
+
Package
+
Optional
+
String
+
Offene Angabe. Das Gehäuse oder die Bauform des Bauteils, z.B. „0805“ für SMD-Widerstände.
+
+
+
Quantity
+
Pflichtfeld
+
Ganzzahl (Integer)
+
Anzahl der identischen Bauteile, die benötigt werden, um eine Instanz der Baugruppe zu erstellen.
+
+
+
Designation
+
Pflichtfeld
+
String
+
Beschreibung oder Funktion des Bauteils, z.B. Widerstandswert „10kΩ“ oder Kondensatorwert „100nF“. Wird für den Namen des BOM-Eintrags verwendet.
+
+
+
Supplier and ref
+
Optional
+
String
+
Offene Angabe. Kann z.B. Distributor spezifischen Wert enthalten.
+
+
+
+ ]]>
+
+
+
+
+
+ typeahead.parts.part.name
+ %name% (Bauteil)
+
+
+
+
+ typeahead.parts.assembly.name
+ %name% (Baugruppe)
+
+
+
+
+ projects.build.form.part
+ Bauteil "%name%"
+
+
+
+
+ projects.build.form.assembly
+ Baugruppe "%name%"
+
+
+
+
+ projects.build.form.assembly.bom.entry
+ %name% (%quantity% benötigt)
+
+
+
+
+ projects.build.form.assembly.bom.entry.no.stock
+ nicht auf Lager
+
+ part.table.actions.error
diff --git a/translations/messages.el.xlf b/translations/messages.el.xlf
index cc17d9be..8fdb801b 100644
--- a/translations/messages.el.xlf
+++ b/translations/messages.el.xlf
@@ -1535,5 +1535,693 @@
Επεξεργασία
+
+
+ part.table.name.value.for_part
+ %value% (Μέρος)
+
+
+
+
+ part.table.name.value.for_assembly
+ %value% (Συναρμολόγηση)
+
+
+
+
+ project.bom.assembly
+ Συναρμολόγηση
+
+
+
+
+ project.bom.partOrAssembly
+ Επιλογή
+
+
+
+
+ assembly.edit.status
+ Κατάσταση
+
+
+
+
+ assembly.status.draft
+ Προσχέδιο
+
+
+
+
+ assembly.status.planning
+ Υπό σχεδιασμό
+
+
+
+
+ assembly.status.in_production
+ Σε παραγωγή
+
+
+
+
+ assembly.status.finished
+ Ολοκληρώθηκε
+
+
+
+
+ assembly.status.archived
+ Αρχειοθετήθηκε
+
+
+
+
+ project.builds.no_stock
+ δεν έχει καθοριστεί απόθεμα
+
+
+
+
+ project.build.builds_part_lot_label
+ %name% (%quantity% απαιτείται)
+
+
+
+
+ assembly.label
+ Σύνολο
+
+
+
+
+ assembly.caption
+ Σύνολο
+
+
+
+
+ perm.assemblies
+ Συναρμολογήσεις
+
+
+
+
+ assembly_bom_entry.label
+ Μέρη
+
+
+
+
+ assembly.labelp
+ Συναρμολογήσεις
+
+
+
+
+ assembly.edit
+ Επεξεργασία συνόλου
+
+
+
+
+ assembly.new
+ Νέο σύνολο
+
+
+
+
+ assembly.edit.associated_build_part
+ Σχετικό μέρος
+
+
+
+
+ assembly.edit.associated_build_part.add
+ Προσθήκη μέρους
+
+
+
+
+ assembly.edit.associated_build.hint
+ Αυτό το μέρος αντιπροσωπεύει τις κατασκευασμένες εκδόσεις του συνόλου. Καταχωρίστε το εάν απαιτούνται κατασκευασμένες εκδόσεις. Εάν όχι, οι ποσότητες θα χρησιμοποιηθούν μόνο κατά την κατασκευή του εκάστοτε έργου.
+
+
+
+
+ assembly.edit.bom.import_bom
+ Εισαγωγή μερών
+
+
+
+
+ log.database_updated.failed
+ __log.database_updated.failed
+
+
+
+
+ log.database_updated.old_version
+ __log.database_updated.old_version
+
+
+
+
+ log.database_updated.new_version
+ __log.database_updated.new_version
+
+
+
+
+ tree.tools.edit.assemblies
+ Συναρμολογήσεις
+
+
+
+
+ assembly.bom_import.flash.success
+ %count% εγγραφές εξαρτημάτων εισήχθησαν με επιτυχία στο σύνολο.
+
+
+
+
+ assembly.bom_import.flash.invalid_entries
+ Σφάλμα επικύρωσης! Ελέγξτε το εισαγόμενο αρχείο!
+
+
+
+
+ assembly.bom_import.flash.invalid_file
+ Το αρχείο δεν μπόρεσε να εισαχθεί. Ελέγξτε ότι έχετε επιλέξει τον σωστό τύπο αρχείου. Μήνυμα σφάλματος: %message%
+
+
+
+
+ assembly.bom.quantity
+ Ποσότητα
+
+
+
+
+ assembly.bom.mountnames
+ Ονόματα συναρμολόγησης
+
+
+
+
+ assembly.bom.instockAmount
+ Ποσότητα σε απόθεμα
+
+
+
+
+ assembly.info.title
+ Πληροφορίες συναρμολόγησης
+
+
+
+
+ assembly.info.info.label
+ Πληροφορίες
+
+
+
+
+ assembly.info.sub_assemblies.label
+ Υποομάδες
+
+
+
+
+ assembly.info.builds.label
+ Κατασκευές
+
+
+
+
+ assembly.info.bom_add_parts
+ Προσθήκη εξαρτημάτων
+
+
+
+
+ assembly.builds.check_assembly_status
+ «%assembly_status%». Ελέγξτε εάν θέλετε πραγματικά να κατασκευάσετε τη συναρμολόγηση με αυτήν την κατάσταση!]]>
+
+
+
+
+ assembly.builds.build_not_possible
+ Η κατασκευή δεν είναι δυνατή: Δεν υπάρχουν αρκετά διαθέσιμα εξαρτήματα
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock
+ Δεν υπάρχουν αρκετά εξαρτήματα σε απόθεμα για να κατασκευαστεί αυτό το έργο %number_of_builds% φορές. Λείπουν τα ακόλουθα εξαρτήματα:
+
+
+
+
+ assembly.builds.build_possible
+ Κατασκευή δυνατή
+
+
+
+
+ assembly.builds.number_of_builds_possible
+ %max_builds% μονάδες αυτής της συναρμολόγησης.]]>
+
+
+
+
+ assembly.builds.number_of_builds
+ Αριθμός κατασκευών
+
+
+
+
+ assembly.build.btn_build
+ Κατασκευή
+
+
+
+
+ assembly.builds.no_stocked_builds
+ Αποθηκευμένα κατασκευασμένα κομμάτια
+
+
+
+
+ assembly.info.bom_entries_count
+ Εξαρτήματα
+
+
+
+
+ assembly.info.sub_assemblies_count
+ Υποομάδες
+
+
+
+
+ assembly.builds.stocked
+ σε απόθεμα
+
+
+
+
+ assembly.builds.needed
+ απαιτούμενο
+
+
+
+
+ assembly.add_parts_to_assembly
+ Προσθήκη εξαρτημάτων στη συναρμολόγηση
+
+
+
+
+ assembly.bom.name
+ Όνομα
+
+
+
+
+ assembly.bom.comment
+ Σχόλια
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock_n
+ Δεν υπάρχουν αρκετά εξαρτήματα σε απόθεμα για να κατασκευαστεί αυτή η συναρμολόγηση %number_of_builds% φορές. Λείπουν τα ακόλουθα εξαρτήματα:
+
+
+
+
+ assembly.build.help
+ Επιλέξτε από ποια αποθέματα θα αφαιρεθούν τα αναγκαία για την κατασκευή εξαρτήματα (και σε ποια ποσότητα). Σημειώστε το πλαίσιο επιλογής για κάθε εξάρτημα όταν αφαιρέσετε τα εξαρτήματα ή χρησιμοποιήστε το ανώτερο πλαίσιο επιλογής για να τα ελέγξετε όλα ταυτόχρονα.
+
+
+
+
+ assembly.build.required_qty
+ Απαιτούμενη ποσότητα
+
+
+
+
+ assembly.import_bom
+ Εισαγωγή εξαρτημάτων συναρμολόγησης
+
+
+
+
+ assembly.bom.part
+ Εξάρτημα
+
+
+
+
+ assembly.bom.add_entry
+ Προσθήκη καταχώρησης
+
+
+
+
+ assembly.bom.price
+ Τιμή
+
+
+
+
+ assembly.build.dont_check_quantity
+ Μην ελέγχετε την ποσότητα
+
+
+
+
+ assembly.build.dont_check_quantity.help
+ Εάν επιλεγεί αυτή η επιλογή, οι επιλεγμένες ποσότητες θα αφαιρεθούν από το απόθεμα ανεξάρτητα από το αν είναι περισσότερο ή λιγότερο από το απαιτούμενο για την κατασκευή της συναρμολόγησης.
+
+
+
+
+ assembly.build.add_builds_to_builds_part
+ Προσθήκη κατασκευασμένων κομματιών στο τμήμα συναρμολόγησης
+
+
+
+
+ assembly.bom_import.type
+ Τύπος
+
+
+
+
+ assembly.bom_import.type.json
+ JSON για συναρμολόγηση
+
+
+
+
+ assembly.bom_import.type.kicad_pcbnew
+ CSV (KiCAD Pcbnew BOM)
+
+
+
+
+ assembly.bom_import.clear_existing_bom
+ Διαγραφή υπαρχόντων εξαρτημάτων πριν από την εισαγωγή
+
+
+
+
+ assembly.bom_import.clear_existing_bom.help
+ Εάν επιλεγεί αυτή η επιλογή, όλα τα ήδη υπάρχοντα εξαρτήματα στη συναρμολόγηση θα διαγραφούν και θα αντικατασταθούν με τα δεδομένα εξαρτημάτων που εισάγονται.
+
+
+
+
+ assembly.import_bom.template.header.json
+ Πρότυπο εισαγωγής JSON για συναρμολόγηση
+
+
+
+
+ assembly.import_bom.template.header.kicad_pcbnew
+ Πρότυπο εισαγωγής CSV (KiCAD Pcbnew BOM) για συναρμολόγηση
+
+
+
+
+ assembly.bom_import.template.entry.name
+ Όνομα του εξαρτήματος στη συναρμολόγηση
+
+
+
+
+ assembly.bom_import.template.entry.part.mpnr
+ Μοναδικός αριθμός προϊόντος από τον κατασκευαστή
+
+
+
+
+ assembly.bom_import.template.entry.part.ipn
+ Μοναδικός IPN του εξαρτήματος
+
+
+
+
+ assembly.bom_import.template.entry.part.name
+ Μοναδικό όνομα εξαρτήματος
+
+
+
+
+ assembly.bom_import.template.entry.part.manufacturer.name
+ Μοναδικό όνομα κατασκευαστή
+
+
+
+
+ assembly.bom_import.template.entry.part.category.name
+ Μοναδικό όνομα κατηγορίας
+
+
+
+
+ assembly.bom_import.template.json.table
+
+
+
+
+
Πεδίο
+
Προϋπόθεση
+
Τύπος Δεδομένων
+
Περιγραφή
+
+
+
+
+
quantity
+
Υποχρεωτικό πεδίο
+
Αριθμός κινητής υποδιαστολής (Float)
+
Πρέπει να παρέχεται και να περιέχει τιμή κινητής υποδιαστολής (Float) μεγαλύτερη από 0.0.
+
+
+
name
+
Προαιρετικό
+
Κείμενο (String)
+
Εάν υπάρχει, πρέπει να είναι μη κενό κείμενο.
+
+
+
part
+
Προαιρετικό
+
Αντικείμενο/Πίνακας
+
+ Εάν παρέχεται, πρέπει να είναι αντικείμενο/πίνακας και τουλάχιστον ένα από τα πεδία του να είναι συμπληρωμένο:
+
+
part.id
+
part.name
+
+
+
+
+
part.id
+
Προαιρετικό
+
Ακέραιος αριθμός (Integer)
+
Ακέραιος (Integer) > 0. Αντιστοιχεί στην εσωτερική αριθμητική ταυτότητα (ID) του εξαρτήματος στη βάση δεδομένων.
+
+
+
part.name
+
Προαιρετικό
+
Κείμενο (String)
+
Μη κενό κείμενο, εάν δεν παρέχονται οι ενδείξεις part.mpnr ή part.ipn.
+
+
+
part.mpnr
+
Προαιρετικό
+
Κείμενο (String)
+
Μη κενό κείμενο, εάν δεν παρέχονται οι ενδείξεις part.name ή part.ipn.
+
+
+
part.ipn
+
Προαιρετικό
+
Κείμενο (String)
+
Μη κενό κείμενο, εάν δεν παρέχονται οι ενδείξεις part.name ή part.mpnr.
+
+
+
part.description
+
Προαιρετικό
+
Κείμενο ή null
+
Εάν υπάρχει, πρέπει να είναι μη κενό κείμενο, ή null.
+
+
+
part.manufacturer
+
Προαιρετικό
+
Αντικείμενο/Πίνακας
+
+ Εάν υπάρχει, πρέπει να είναι αντικείμενο/πίνακας και τουλάχιστον ένα από τα πεδία του να είναι συμπληρωμένο:
+
+
manufacturer.id
+
manufacturer.name
+
+
+
+
+
manufacturer.id
+
Προαιρετικό
+
Ακέραιος αριθμός (Integer)
+
Ακέραιος (Integer) > 0. Αντιστοιχεί στην εσωτερική αριθμητική ταυτότητα (ID) του κατασκευαστή.
+
+
+
manufacturer.name
+
Προαιρετικό
+
Κείμενο (String)
+
Μη κενό κείμενο, εάν δεν παρέχεται η ένδειξη manufacturer.id.
+
+
+
part.category
+
Προαιρετικό
+
Αντικείμενο/Πίνακας
+
+ Εάν υπάρχει, πρέπει να είναι αντικείμενο/πίνακας και τουλάχιστον ένα από τα πεδία του να είναι συμπληρωμένο:
+
+
category.id
+
category.name
+
+
+
+
+
category.id
+
Προαιρετικό
+
Ακέραιος αριθμός (Integer)
+
Ακέραιος (Integer) > 0. Αντιστοιχεί στην εσωτερική αριθμητική ταυτότητα (ID) της κατηγορίας του εξαρτήματος.
+
+
+
category.name
+
Προαιρετικό
+
Κείμενο (String)
+
Μη κενό κείμενο, εάν δεν παρέχεται η ένδειξη category.id.
Ελεύθερη καταχώρηση. Μοναδικός αριθμός ταυτοποίησης για κάθε εξάρτημα.
+
+
+
Σχεδιαστής
+
Προαιρετικό
+
Συμβολοσειρά (String)
+
Ελεύθερη καταχώρηση. Μοναδικός αναγνωριστικός δείκτης του εξαρτήματος στην πλακέτα κυκλώματος, π.χ. "R1" για την αντίσταση 1. Χρησιμοποιείται για το όνομα του εξαρτήματος στο πλαίσιο της ομάδας εξαρτημάτων.
+
+
+
Συσκευασία
+
Προαιρετικό
+
Συμβολοσειρά (String)
+
Ελεύθερη καταχώρηση. Ο τύπος ή η μορφή του εξαρτήματος, π.χ. "0805" για αντιστάσεις SMD.
+
+
+
Ποσότητα
+
Υποχρεωτικό
+
Ακέραιος αριθμός (Integer)
+
Ο αριθμός των πανομοιότυπων εξαρτημάτων που απαιτούνται για τη δημιουργία μίας μονάδας του συνόλου.
+
+
+
Ορισμός
+
Υποχρεωτικό
+
Συμβολοσειρά (String)
+
Περιγραφή ή λειτουργία του εξαρτήματος, π.χ. αντίσταση "10kΩ" ή χωρητικότητα "100nF". Χρησιμοποιείται για το όνομα της εγγραφής στο BOM.
+
+
+
Προμηθευτής και παραπομπή
+
Προαιρετικό
+
Συμβολοσειρά (String)
+
Ελεύθερη καταχώρηση. Μπορεί να περιλαμβάνει, π.χ., ειδική τιμή από διανομέα.
+
+
+
+ ]]>
+
+
+
+
+
+ typeahead.parts.part.name
+ %name% (Εξάρτημα)
+
+
+
+
+ typeahead.parts.assembly.name
+ %name% (Συναρμολόγηση)
+
+
+
+
+ projects.build.form.part
+ Εξάρτημα "%name%"
+
+
+
+
+ projects.build.form.assembly
+ Συναρμολόγηση "%name%"
+
+
+
+
+ projects.build.form.assembly.bom.entry
+ %name% (%quantity% απαιτείται)
+
+
+
+
+ projects.build.form.assembly.bom.entry.no.stock
+ δεν υπάρχει στο απόθεμα
+
+
diff --git a/translations/messages.en.xlf b/translations/messages.en.xlf
index a2ec2f65..210d8192 100644
--- a/translations/messages.en.xlf
+++ b/translations/messages.en.xlf
@@ -4741,6 +4741,18 @@ If you have done this incorrectly or if a computer is no longer trusted, you can
Name
+
+
+ part.table.name.value.for_part
+ %value% (Part)
+
+
+
+
+ part.table.name.value.for_assembly
+ %value% (Assembly)
+
+ Part-DB1\src\DataTables\PartsDataTable.php:178
@@ -9861,6 +9873,18 @@ Element 1 -> Element 1.2
Part
+
+
+ project.bom.assembly
+ Assembly
+
+
+
+
+ project.bom.partOrAssembly
+ Selection
+
+ project.bom.add_entry
@@ -9939,6 +9963,42 @@ Element 1 -> Element 1.2
Archived
+
+
+ assembly.edit.status
+ Project status
+
+
+
+
+ assembly.status.draft
+ Draft
+
+
+
+
+ assembly.status.planning
+ Planning
+
+
+
+
+ assembly.status.in_production
+ In production
+
+
+
+
+ assembly.status.finished
+ Finished
+
+
+
+
+ assembly.status.archived
+ Archived
+
+ part.new_build_part.error.build_part_already_exists
@@ -10215,6 +10275,12 @@ Element 1 -> Element 1.2
stocked
+
+
+ project.builds.no_stock
+ no stock specified
+
+ project.builds.needed
@@ -10287,6 +10353,12 @@ Element 1 -> Element 1.2
Target lot
+
+
+ project.build.builds_part_lot_label
+ %name% (%quantity% needed)
+
+ project.builds.number_of_builds
@@ -12930,6 +13002,622 @@ Please note, that you can not impersonate a disabled user. If you try you will g
View external version
+
+
+ assembly.label
+ Assembly
+
+
+
+
+ assembly.caption
+ Assembly
+
+
+
+
+ assembly_bom_entry.label
+ Parts
+
+
+
+
+ perm.assemblies
+ Assemblies
+
+
+
+
+ assembly.labelp
+ Assemblies
+
+
+
+
+ assembly.edit
+ Edit assembly
+
+
+
+
+ assembly.new
+ New assembly
+
+
+
+
+ assembly.edit.associated_build_part
+ Associated builds part
+
+
+
+
+ assembly.edit.associated_build_part.add
+ Add builds part
+
+
+
+
+ assembly.edit.associated_build.hint
+ This part represents the builds of this assembly. To indicate if built instances are required. If not, the number of pieces regarding the assembly are only used for the build of the respective project.
+
+
+
+
+ assembly.edit.bom.import_bom
+ Import BOM
+
+
+
+
+ log.database_updated.failed
+ __log.database_updated.failed
+
+
+
+
+ log.database_updated.old_version
+ __log.database_updated.old_version
+
+
+
+
+ log.database_updated.new_version
+ __log.database_updated.new_version
+
+
+
+
+ tree.tools.edit.assemblies
+ Assemblies
+
+
+
+
+ assembly.bom_import.flash.success
+ Imported %count% parts in assembly successfully.
+
+
+
+
+ assembly.bom_import.flash.invalid_entries
+ Validation error! Please check your data!
+
+
+
+
+ assembly.bom_import.flash.invalid_file
+ File could not be imported. Please check that you have selected the right file type. Error message: %message%
+
+
+
+
+ assembly.bom.quantity
+ Quantity
+
+
+
+
+ assembly.bom.mountnames
+ Mount names
+
+
+
+
+ assembly.bom.instockAmount
+ Stocked amount
+
+
+
+
+ assembly.info.title
+ Assembly info
+
+
+
+
+ assembly.info.info.label
+ Info
+
+
+
+
+ assembly.info.sub_assemblies.label
+ Sub-assemblies
+
+
+
+
+ assembly.info.builds.label
+ Build
+
+
+
+
+ assembly.info.bom_add_parts
+ Add part entries
+
+
+
+
+ assembly.builds.check_assembly_status
+ "%assembly_status%". You should check if you really want to build the assembly with this status!]]>
+
+
+
+
+ assembly.builds.build_not_possible
+ Build not possible: Parts not stocked
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock
+ You do not have enough parts stocked to build this assembly %number_of_builds% times. The following parts have missing instock:
+
+
+
+
+ assembly.builds.build_possible
+ Build possible
+
+
+
+
+ assembly.builds.number_of_builds_possible
+ %max_builds% builds of this assembly.]]>
+
+
+
+
+ assembly.builds.number_of_builds
+ Build amount
+
+
+
+
+ assembly.build.btn_build
+ Build
+
+
+
+
+ assembly.builds.no_stocked_builds
+ Number of stocked builds
+
+
+
+
+ assembly.info.bom_entries_count
+ Part entries
+
+
+
+
+ assembly.info.sub_assemblies_count
+ Sub-assemblies
+
+
+
+
+ assembly.builds.stocked
+ stocked
+
+
+
+
+ assembly.builds.needed
+ needed
+
+
+
+
+ assembly.add_parts_to_assembly
+ Add parts to assembly
+
+
+
+
+ assembly.bom.name
+ Name
+
+
+
+
+ assembly.bom.comment
+ Notes
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock_n
+ You do not have enough parts stocked to build this assembly %number_of_builds% times. The following parts have missing instock:
+
+
+
+
+ assembly.build.help
+ Choose from which part lots the stock to build this assembly should be taken (and in which amount). Check the checkbox for each part, when you are finished withdrawing the parts, or use the top checkbox to check all boxes at once.
+
+
+
+
+ assembly.build.required_qty
+ Required quantity
+
+
+
+
+ assembly.import_bom
+ Import BOM for project
+
+
+
+
+ assembly.bom.part
+ Part
+
+
+
+
+ assembly.bom.add_entry
+ Add entry
+
+
+
+
+ assembly.bom.price
+ Price
+
+
+
+
+ assembly.build.dont_check_quantity
+ Do not check quantities
+
+
+
+
+ assembly.build.dont_check_quantity.help
+ If this option is selected, the given withdraw quantities are used as given, no matter if more or less parts are actually required to build this assembly.
+
+
+
+
+ assembly.build.add_builds_to_builds_part
+ Add builds to assembly builds part
+
+
+
+
+ assembly.bom_import.type
+ Type
+
+
+
+
+ assembly.bom_import.type.json
+ JSON for one assembly
+
+
+
+
+ assembly.bom_import.type.kicad_pcbnew
+ CSV (KiCAD Pcbnew BOM)
+
+
+
+
+ assembly.bom_import.clear_existing_bom
+ Clear existing part entries before importing
+
+
+
+
+ assembly.bom_import.clear_existing_bom.help
+ Selecting this option will remove all existing part entries in the assembly and overwrite them with the imported part data!
+
+
+
+
+ assembly.import_bom.template.header.json
+ Import template JSON format for one assembly
+
+
+
+
+ assembly.import_bom.template.header.kicad_pcbnew
+ Import template CSV format (KiCAD Pcbnew BOM) for one assembly
+
+
+
+
+ assembly.bom_import.template.entry.name
+ Name of the part in the assembly
+
+
+
+
+ assembly.bom_import.template.entry.part.mpnr
+ Unique product number within the manufacturer
+
+
+
+
+ assembly.bom_import.template.entry.part.ipn
+ Unique IPN of the part
+
+
+
+
+ assembly.bom_import.template.entry.part.name
+ Unique name of the part
+
+
+
+
+ assembly.bom_import.template.entry.part.manufacturer.name
+ Unique name of the manufacturer
+
+
+
+
+ assembly.bom_import.template.entry.part.category.name
+ Unique name of the category
+
+
+
+
+ assembly.bom_import.template.json.table
+
+
+
+
+
Field
+
Condition
+
Data type
+
Description
+
+
+
+
+
quantity
+
Required
+
Floating point (Float)
+
Must be provided and contains a floating-point value (Float) greater than 0.0.
+
+
+
name
+
Optional
+
String
+
If present, it must be a non-empty string.
+
+
+
part
+
Optional
+
Object/Array
+
+ If provided, it must be an object/array and at least one of the fields must be filled:
+
+
part.id
+
part.name
+
+
+
+
+
part.id
+
Optional
+
Integer
+
Integer > 0. Matches the Part-DB internal numeric ID of the component.
+
+
+
part.name
+
Optional
+
String
+
Non-empty string if no part.mpnr or part.ipn is provided.
+
+
+
part.mpnr
+
Optional
+
String
+
Non-empty string if no part.name or part.ipn is provided.
+
+
+
part.ipn
+
Optional
+
String
+
Non-empty string if no part.name or part.mpnr is provided.
+
+
+
part.description
+
Optional
+
String or null
+
If present, it must be a non-empty string or null.
+
+
+
part.manufacturer
+
Optional
+
Object/Array
+
+ If present, it must be an object/array and at least one of the fields must be filled:
+
+
manufacturer.id
+
manufacturer.name
+
+
+
+
+
manufacturer.id
+
Optional
+
Integer
+
Integer > 0. Matches the internal numeric ID of the manufacturer.
+
+
+
manufacturer.name
+
Optional
+
String
+
Non-empty string if no manufacturer.id is provided.
+
+
+
part.category
+
Optional
+
Object/Array
+
+ If present, it must be an object/array and at least one of the fields must be filled:
+
+
category.id
+
category.name
+
+
+
+
+
category.id
+
Optional
+
Integer
+
Integer > 0. Matches the internal numeric ID of the component's category.
+
+
+
category.name
+
Optional
+
String
+
Non-empty string if no category.id is provided.
+
+
+
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns
+ Expected Columns:
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns.note
+
+ Note: No mapping is performed with specific components from category management.
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.table
+
+
+
+
+
Field
+
Condition
+
Data Type
+
Description
+
+
+
+
+
Id
+
Optional
+
Integer
+
Free-form field. A unique identification number for each component.
+
+
+
Designator
+
Optional
+
String
+
Free-form field. A unique reference designator of the component on the PCB, e.g., “R1” for resistor 1. Used for naming the placement in the component group.
+
+
+
Package
+
Optional
+
String
+
Free-form field. The casing or form factor of the component, e.g., “0805” for SMD resistors.
+
+
+
Quantity
+
Required
+
Integer
+
The number of identical components required to create a single instance of an assembly.
+
+
+
Designation
+
Required
+
String
+
The description or function of the component, e.g., resistor value “10kΩ” or capacitor value “100nF.” Used for the name in the BOM entry.
+
+
+
Supplier and ref
+
Optional
+
String
+
Free-form field. May include, for example, specific distributor information.
+
+
+
+ ]]>
+
+
+
+
+
+ typeahead.parts.part.name
+ %name% (Part)
+
+
+
+
+ typeahead.parts.assembly.name
+ %name% (Assembly)
+
+
+
+
+ projects.build.form.part
+ Part "%name%"
+
+
+
+
+ projects.build.form.assembly
+ Assembly "%name%"
+
+
+
+
+ projects.build.form.assembly.bom.entry
+ %name% (%quantity% needed)
+
+
+
+
+ projects.build.form.assembly.bom.entry.no.stock
+ not in stock
+
+ part.table.actions.error
diff --git a/translations/messages.es.xlf b/translations/messages.es.xlf
index fce38e52..f961630c 100644
--- a/translations/messages.es.xlf
+++ b/translations/messages.es.xlf
@@ -4740,6 +4740,18 @@ Subelementos serán desplazados hacia arriba.
Nombre
+
+
+ part.table.name.value.for_part
+ %value% (Componente)
+
+
+
+
+ part.table.name.value.for_assembly
+ %value% (Ensamblaje)
+
+ Part-DB1\src\DataTables\PartsDataTable.php:178
@@ -9804,6 +9816,18 @@ Elemento 3
Componente
+
+
+ project.bom.assembly
+ Baugruppe
+
+
+
+
+ project.bom.partOrAssembly
+ Auswahl
+
+ project.bom.add_entry
@@ -9882,6 +9906,42 @@ Elemento 3
Archivado
+
+
+ assembly.edit.status
+ Estatus
+
+
+
+
+ assembly.status.draft
+ Esbozo
+
+
+
+
+ assembly.status.planning
+ En planificación
+
+
+
+
+ assembly.status.in_production
+ En producción
+
+
+
+
+ assembly.status.finished
+ Completado
+
+
+
+
+ assembly.status.archived
+ Archivado
+
+ part.new_build_part.error.build_part_already_exists
@@ -10158,6 +10218,12 @@ Elemento 3
Almacenado
+
+
+ project.builds.no_stock
+ no se ha especificado stock
+
+ project.builds.needed
@@ -10230,6 +10296,12 @@ Elemento 3
Lote objetivo
+
+
+ project.build.builds_part_lot_label
+ %name% (se requiere %quantity%)
+
+ project.builds.number_of_builds
@@ -12368,5 +12440,621 @@ Por favor ten en cuenta que no puedes personificar a un usuario deshabilitado. S
Este componente contiene más de un stock. Cambie la ubicación manualmente para seleccionar el stock deseado.
+
+
+ assembly.label
+ Ensamblaje
+
+
+
+
+ assembly.caption
+ Ensamblaje
+
+
+
+
+ perm.assemblies
+ Ensamblajes
+
+
+
+
+ assembly_bom_entry.label
+ Componentes
+
+
+
+
+ assembly.labelp
+ Ensamblajes
+
+
+
+
+ assembly.edit
+ Editar ensamblaje
+
+
+
+
+ assembly.new
+ Nuevo ensamblaje
+
+
+
+
+ assembly.edit.associated_build_part
+ Componente asociado
+
+
+
+
+ assembly.edit.associated_build_part.add
+ Añadir componente
+
+
+
+
+ assembly.edit.associated_build.hint
+ Este componente representa las instancias fabricadas del ensamblaje. Indique si se necesitan instancias fabricadas. De lo contrario, las cantidades del componente solo se utilizarán cuando se construya el proyecto correspondiente.
+
+
+
+
+ assembly.edit.bom.import_bom
+ Importar componentes
+
+
+
+
+ log.database_updated.failed
+ __log.database_updated.failed
+
+
+
+
+ log.database_updated.old_version
+ __log.database_updated.old_version
+
+
+
+
+ log.database_updated.new_version
+ __log.database_updated.new_version
+
+
+
+
+ tree.tools.edit.assemblies
+ Ensamblajes
+
+
+
+
+ assembly.bom_import.flash.success
+ %count% componente(s) se importaron correctamente al ensamblaje.
+
+
+
+
+ assembly.bom_import.flash.invalid_entries
+ ¡Error de validación! ¡Revisa el archivo importado!
+
+
+
+
+ assembly.bom_import.flash.invalid_file
+ No se pudo importar el archivo. Asegúrate de haber seleccionado el tipo de archivo correcto. Mensaje de error: %message%
+
+
+
+
+ assembly.bom.quantity
+ Cantidad
+
+
+
+
+ assembly.bom.mountnames
+ Nombres de montaje
+
+
+
+
+ assembly.bom.instockAmount
+ Cantidad en stock
+
+
+
+
+ assembly.info.title
+ Información del ensamblaje
+
+
+
+
+ assembly.info.info.label
+ Información
+
+
+
+
+ assembly.info.sub_assemblies.label
+ Subconjuntos
+
+
+
+
+ assembly.info.builds.label
+ Construcciones
+
+
+
+
+ assembly.info.bom_add_parts
+ Añadir piezas
+
+
+
+
+ assembly.builds.check_assembly_status
+ "%assembly_status%". ¡Por favor, verifica si realmente deseas construir el ensamblaje con este estado!]]>
+
+
+
+
+ assembly.builds.build_not_possible
+ Construcción no posible: No hay suficientes componentes disponibles
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock
+ No hay suficientes piezas en stock para construir este proyecto %number_of_builds% veces. Faltan las siguientes piezas:
+
+
+
+
+ assembly.builds.build_possible
+ Construcción posible
+
+
+
+
+ assembly.builds.number_of_builds_possible
+ %max_builds% unidades de este ensamblaje.]]>
+
+
+
+
+ assembly.builds.number_of_builds
+ Número de construcciones
+
+
+
+
+ assembly.build.btn_build
+ Construir
+
+
+
+
+ assembly.builds.no_stocked_builds
+ Unidades construidas almacenadas
+
+
+
+
+ assembly.info.bom_entries_count
+ Componentes
+
+
+
+
+ assembly.info.sub_assemblies_count
+ Subconjuntos
+
+
+
+
+ assembly.builds.stocked
+ en stock
+
+
+
+
+ assembly.builds.needed
+ necesario
+
+
+
+
+ assembly.add_parts_to_assembly
+ Añadir piezas al ensamblaje
+
+
+
+
+ assembly.bom.name
+ Nombre
+
+
+
+
+ assembly.bom.comment
+ Comentarios
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock_n
+ No hay suficientes piezas en stock para construir este ensamblaje %number_of_builds% veces. Faltan las siguientes piezas:
+
+
+
+
+ assembly.build.help
+ Seleccione de qué almacenes se tomarán las piezas necesarias para la construcción (y en qué cantidad). Marque la casilla de cada entrada una vez que haya quitado las piezas, o use la casilla superior para marcarlas todas a la vez.
+
+
+
+
+ assembly.build.required_qty
+ Cantidad requerida
+
+
+
+
+ assembly.import_bom
+ Importar piezas para ensamblaje
+
+
+
+
+ assembly.bom.part
+ Pieza
+
+
+
+
+ assembly.bom.add_entry
+ Añadir entrada
+
+
+
+
+ assembly.bom.price
+ Precio
+
+
+
+
+ assembly.build.dont_check_quantity
+ No verificar cantidades
+
+
+
+
+ assembly.build.dont_check_quantity.help
+ Si se selecciona esta opción, las cantidades seleccionadas se quitarán del inventario independientemente de si hay más o menos de lo necesario para construir el ensamblaje.
+
+
+
+
+ assembly.build.add_builds_to_builds_part
+ Añadir unidades construidas a la parte del ensamblaje
+
+
+
+
+ assembly.bom_import.type
+ Tipo
+
+
+
+
+ assembly.bom_import.type.json
+ JSON para un ensamblaje
+
+
+
+
+ assembly.bom_import.type.kicad_pcbnew
+ CSV (KiCAD Pcbnew BOM)
+
+
+
+
+ assembly.bom_import.clear_existing_bom
+ Eliminar entradas de componentes existentes antes de la importación
+
+
+
+
+ assembly.bom_import.clear_existing_bom.help
+ Si esta opción está seleccionada, se eliminarán todos los componentes existentes en el ensamblaje y serán reemplazados por los datos de los componentes importados.
+
+
+
+
+ assembly.import_bom.template.header.json
+ Plantilla de importación JSON para un ensamblaje
+
+
+
+
+ assembly.import_bom.template.header.kicad_pcbnew
+ Plantilla de importación CSV (KiCAD Pcbnew BOM) para un ensamblaje
+
+
+
+
+ assembly.bom_import.template.entry.name
+ Nombre del componente en el ensamblaje
+
+
+
+
+ assembly.bom_import.template.entry.part.mpnr
+ Número de parte único dentro del fabricante
+
+
+
+
+ assembly.bom_import.template.entry.part.ipn
+ IPN único del componente
+
+
+
+
+ assembly.bom_import.template.entry.part.name
+ Nombre único del componente
+
+
+
+
+ assembly.bom_import.template.entry.part.manufacturer.name
+ Nombre único del fabricante
+
+
+
+
+ assembly.bom_import.template.entry.part.category.name
+ Nombre único de la categoría
+
+
+
+
+ assembly.bom_import.template.json.table
+
+
+
+
+
Campo
+
Condición
+
Tipo de dato
+
Descripción
+
+
+
+
+
quantity
+
Obligatorio
+
Número decimal (Float)
+
Debe estar presente y contener un valor decimal (Float) mayor que 0.0.
+
+
+
name
+
Opcional
+
Cadena de texto (String)
+
Si está presente, debe ser una cadena de texto no vacía.
+
+
+
part
+
Opcional
+
Objeto/Array
+
+ Si se proporciona, debe ser un objeto/array y al menos uno de los campos debe estar completado:
+
+
part.id
+
part.name
+
+
+
+
+
part.id
+
Opcional
+
Entero (Integer)
+
Entero (Integer) > 0. Corresponde al ID numérico interno del componente en la base de datos.
+
+
+
part.name
+
Opcional
+
Cadena de texto (String)
+
Cadena de texto no vacía, si no se proporciona part.mpnr o part.ipn.
+
+
+
part.mpnr
+
Opcional
+
Cadena de texto (String)
+
Cadena de texto no vacía, si no se proporciona part.name o part.ipn.
+
+
+
part.ipn
+
Opcional
+
Cadena de texto (String)
+
Cadena de texto no vacía, si no se proporciona part.name o part.mpnr.
+
+
+
part.description
+
Opcional
+
Cadena de texto (String) o null
+
Si está presente, debe ser una cadena de texto no vacía o null.
+
+
+
part.manufacturer
+
Opcional
+
Objeto/Array
+
+ Si está presente, debe ser un objeto/array y al menos uno de los campos debe estar completado:
+
+
manufacturer.id
+
manufacturer.name
+
+
+
+
+
manufacturer.id
+
Opcional
+
Entero (Integer)
+
Entero (Integer) > 0. Corresponde al ID numérico interno del fabricante.
+
+
+
manufacturer.name
+
Opcional
+
Cadena de texto (String)
+
Cadena de texto no vacía, si no se proporciona manufacturer.id.
+
+
+
part.category
+
Opcional
+
Objeto/Array
+
+ Si está presente, debe ser un objeto/array y al menos uno de los campos debe estar completado:
+
+
category.id
+
category.name
+
+
+
+
+
category.id
+
Opcional
+
Entero (Integer)
+
Entero (Integer) > 0. Corresponde al ID numérico interno de la categoría del componente.
+
+
+
category.name
+
Opcional
+
Cadena de texto (String)
+
Cadena de texto no vacía, si no se proporciona category.id.
+
+
+
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns
+ Columnas esperadas:
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns.note
+
+ Nota: No se realiza una asociación con componentes específicos de la gestión de categorías.
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.table
+
+
+
+
+
Campo
+
Condición
+
Tipo de Datos
+
Descripción
+
+
+
+
+
Id
+
Opcional
+
Entero
+
Campo libre. Un número de identificación único para cada componente.
+
+
+
Designador
+
Opcional
+
Cadena de texto
+
Campo libre. Un designador de referencia único para el componente en la PCB, p. ej., "R1" para la resistencia 1. Se utiliza para nombrar la colocación en el grupo de componentes.
+
+
+
Package
+
Opcional
+
Cadena de texto
+
Campo libre. El formato o tipo de encapsulado del componente, p. ej., "0805" para resistencias SMD.
+
+
+
Cantidad
+
Obligatorio
+
Entero
+
El número de componentes idénticos necesarios para crear una instancia única de un ensamblaje.
+
+
+
Designación
+
Obligatorio
+
Cadena de texto
+
La descripción o función del componente, p. ej., el valor de la resistencia "10kΩ" o el valor del condensador "100nF". Se utiliza para el nombre en la entrada del BOM.
+
+
+
Proveedor y referencia
+
Opcional
+
Cadena de texto
+
Campo libre. Puede incluir, por ejemplo, información específica del distribuidor.
+
+
+
+ ]]>
+
+
+
+
+
+ typeahead.parts.part.name
+ %name% (Componente)
+
+
+
+
+ typeahead.parts.assembly.name
+ %name% (Ensamblaje)
+
+
+
+
+ projects.build.form.part
+ Componente "%name%"
+
+
+
+
+ projects.build.form.assembly
+ Ensamblaje "%name%"
+
+
+
+
+ projects.build.form.assembly.bom.entry
+ %name% (%quantity% necesario)
+
+
+
+
+ projects.build.form.assembly.bom.entry.no.stock
+ sin stock
+
+
diff --git a/translations/messages.fr.xlf b/translations/messages.fr.xlf
index 292dbafa..59b63a98 100644
--- a/translations/messages.fr.xlf
+++ b/translations/messages.fr.xlf
@@ -4703,6 +4703,18 @@ Si vous avez fait cela de manière incorrecte ou si un ordinateur n'est plus fia
Nom
+
+
+ part.table.name.value.for_part
+ %value% (Componente)
+
+
+
+
+ part.table.name.value.for_assembly
+ %value% (Assemblaggio)
+
+ Part-DB1\src\DataTables\PartsDataTable.php:178
@@ -9097,5 +9109,681 @@ exemple de ville
Si vous avez des questions à propos de Part-DB , rendez vous sur <a href="%href%" class="link-external" target="_blank">Github</a>
+
+
+ project.bom.assembly
+ Assemblage
+
+
+
+
+ project.bom.partOrAssembly
+ Sélection
+
+
+
+
+ assembly.edit.status
+ Statut
+
+
+
+
+ assembly.status.draft
+ Brouillon
+
+
+
+
+ assembly.status.planning
+ En planification
+
+
+
+
+ assembly.status.in_production
+ En production
+
+
+
+
+ assembly.status.finished
+ Terminé
+
+
+
+
+ assembly.status.archived
+ Archivé
+
+
+
+
+ project.builds.no_stock
+ aucun stock indiqué
+
+
+
+
+ project.build.builds_part_lot_label
+ %name% (%quantity% requis)
+
+
+
+
+ assembly.label
+ Assemblage
+
+
+
+
+ assembly.caption
+ Assemblage
+
+
+
+
+ perm.assemblies
+ Assemblages
+
+
+
+
+ assembly_bom_entry.label
+ Composants
+
+
+
+
+ assembly.labelp
+ Assemblages
+
+
+
+
+ assembly.edit
+ Modifier l'assemblage
+
+
+
+
+ assembly.new
+ Nouvel assemblage
+
+
+
+
+ assembly.edit.associated_build_part
+ Composant associé
+
+
+
+
+ assembly.edit.associated_build_part.add
+ Ajouter un composant
+
+
+
+
+ assembly.edit.associated_build.hint
+ Ce composant représente les instances fabriquées de l'assemblage. Indiquez si des instances fabriquées sont nécessaires. Sinon, les quantités des composants ne seront appliquées que lors de la construction du projet correspondant.
+
+
+
+
+ assembly.edit.bom.import_bom
+ Importer des composants
+
+
+
+
+ log.database_updated.failed
+ __log.database_updated.failed
+
+
+
+
+ log.database_updated.old_version
+ __log.database_updated.old_version
+
+
+
+
+ log.database_updated.new_version
+ __log.database_updated.new_version
+
+
+
+
+ tree.tools.edit.assemblies
+ Assemblages
+
+
+
+
+ assembly.bom_import.flash.success
+ %count% composant(s) ont été importé(s) avec succès dans l'assemblage.
+
+
+
+
+ assembly.bom_import.flash.invalid_entries
+ Erreur de validation ! Veuillez vérifier le fichier importé !
+
+
+
+
+ assembly.bom_import.flash.invalid_file
+ Le fichier n'a pas pu être importé. Veuillez vérifier que vous avez sélectionné le bon type de fichier. Message d'erreur : %message%
+
+
+
+
+ assembly.bom.quantity
+ Quantité
+
+
+
+
+ assembly.bom.mountnames
+ Noms de montage
+
+
+
+
+ assembly.bom.instockAmount
+ Quantité en stock
+
+
+
+
+ assembly.info.title
+ Informations sur l'assemblage
+
+
+
+
+ assembly.info.info.label
+ Informations
+
+
+
+
+ assembly.info.sub_assemblies.label
+ Sous-ensembles
+
+
+
+
+ assembly.info.builds.label
+ Constructions
+
+
+
+
+ assembly.info.bom_add_parts
+ Ajouter des pièces
+
+
+
+
+ assembly.builds.check_assembly_status
+ "%assembly_status%". Vérifiez bien si vous souhaitez construire l'assemblage avec ce statut !]]>
+
+
+
+
+ assembly.builds.build_not_possible
+ Construction impossible : pièces insuffisantes disponibles
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock
+ Il n'y a pas suffisamment de pièces en stock pour construire ce projet %number_of_builds% fois. Les pièces suivantes manquent en stock :
+
+
+
+
+ assembly.builds.build_possible
+ Construction possible
+
+
+
+
+ assembly.builds.number_of_builds_possible
+ %max_builds% unités de cet assemblage.]]>
+
+
+
+
+ assembly.builds.number_of_builds
+ Nombre d'assemblages à construire
+
+
+
+
+ assembly.build.btn_build
+ Construire
+
+
+
+
+ assembly.builds.no_stocked_builds
+ Nombre d'instances construites en stock
+
+
+
+
+ assembly.info.bom_entries_count
+ Composants
+
+
+
+
+ assembly.info.sub_assemblies_count
+ Sous-ensembles
+
+
+
+
+ assembly.builds.stocked
+ en stock
+
+
+
+
+ assembly.builds.needed
+ nécessaire
+
+
+
+
+ assembly.add_parts_to_assembly
+ Ajouter des pièces à l'assemblage
+
+
+
+
+ assembly.bom.name
+ Nom
+
+
+
+
+ assembly.bom.comment
+ Commentaires
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock_n
+ Il n'y a pas suffisamment de pièces en stock pour construire cet assemblage %number_of_builds% fois. Les pièces suivantes manquent en stock :
+
+
+
+
+ assembly.build.help
+ Sélectionnez les stocks à partir desquels les pièces nécessaires à la construction seront prises (et en quelle quantité). Vérifiez chaque pièce en les retirant, ou utilisez la case supérieure pour les sélectionner toutes à la fois.
+
+
+
+
+ assembly.build.required_qty
+ Quantité requise
+
+
+
+
+ assembly.import_bom
+ Importer des pièces pour l'assemblage
+
+
+
+
+ assembly.bom.part
+ Pièce
+
+
+
+
+ assembly.bom.add_entry
+ Ajouter une ligne
+
+
+
+
+ assembly.bom.price
+ Prix
+
+
+
+
+ assembly.build.dont_check_quantity
+ Ne pas vérifier les quantités
+
+
+
+
+ assembly.build.dont_check_quantity.help
+ Si cette option est activée, les quantités sélectionnées seront retirées du stock, quelle que soit leur suffisance pour l’assemblage.
+
+
+
+
+ assembly.build.add_builds_to_builds_part
+ Ajouter les unités construites à la pièce assemblée
+
+
+
+
+ assembly.bom_import.type
+ Type
+
+
+
+
+ assembly.bom_import.type.json
+ JSON pour un assemblage
+
+
+
+
+ assembly.bom_import.type.kicad_pcbnew
+ CSV (KiCAD Pcbnew BOM)
+
+
+
+
+ assembly.bom_import.clear_existing_bom
+ Supprimer les entrées de pièces existantes avant l’importation
+
+
+
+
+ assembly.bom_import.clear_existing_bom.help
+ Si cette option est cochée, toutes les pièces existantes dans l’assemblage seront supprimées et remplacées par les données importées.
+
+
+
+
+ assembly.import_bom.template.header.json
+ Modèle d’importation JSON pour un assemblage
+
+
+
+
+ assembly.import_bom.template.header.kicad_pcbnew
+ Modèle d’importation CSV (KiCAD Pcbnew BOM) pour un assemblage
+
+
+
+
+ assembly.bom_import.template.entry.name
+ Nom de la pièce dans l’assemblage
+
+
+
+
+ assembly.bom_import.template.entry.part.mpnr
+ Numéro unique de la pièce chez le fabricant
+
+
+
+
+ assembly.bom_import.template.entry.part.ipn
+ Numéro IPN unique de la pièce
+
+
+
+
+ assembly.bom_import.template.entry.part.name
+ Nom unique de la pièce
+
+
+
+
+ assembly.bom_import.template.entry.part.manufacturer.name
+ Nom unique du fabricant
+
+
+
+
+ assembly.bom_import.template.entry.part.category.name
+ Nom unique de la catégorie
+
+
+
+
+ assembly.bom_import.template.json.table
+
+
+
+
+
Champ
+
Condition
+
Type de données
+
Description
+
+
+
+
+
quantity
+
Obligatoire
+
Nombre décimal (Float)
+
Doit être présent et contenir une valeur décimale (Float) supérieure à 0,0.
+
+
+
name
+
Optionnel
+
Chaîne (String)
+
Si présent, doit être une chaîne non vide.
+
+
+
part
+
Optionnel
+
Objet/Tableau
+
+ Si fourni, doit être un objet/un tableau et au moins un des champs doit être rempli :
+
+
part.id
+
part.name
+
+
+
+
+
part.id
+
Optionnel
+
Entier (Integer)
+
Entier (Integer) > 0. Correspond à l'ID numérique interne dans Part-DB du composant.
+
+
+
part.name
+
Optionnel
+
Chaîne (String)
+
Chaîne non vide si part.mpnr ou part.ipn ne sont pas fournis.
+
+
+
part.mpnr
+
Optionnel
+
Chaîne (String)
+
Chaîne non vide si part.name ou part.ipn ne sont pas fournis.
+
+
+
part.ipn
+
Optionnel
+
Chaîne (String)
+
Chaîne non vide si part.name ou part.mpnr ne sont pas fournis.
+
+
+
part.description
+
Optionnel
+
Chaîne ou null
+
Si présent, doit être une chaîne non vide ou null.
+
+
+
part.manufacturer
+
Optionnel
+
Objet/Tableau
+
+ Si présent, doit être un objet/un tableau et au moins un des champs doit être rempli :
+
+
manufacturer.id
+
manufacturer.name
+
+
+
+
+
manufacturer.id
+
Optionnel
+
Entier (Integer)
+
Entier (Integer) > 0. Correspond à l'ID numérique interne du fabricant.
+
+
+
manufacturer.name
+
Optionnel
+
Chaîne (String)
+
Chaîne non vide si manufacturer.id n'est pas fourni.
+
+
+
part.category
+
Optionnel
+
Objet/Tableau
+
+ Si présent, doit être un objet/un tableau et au moins un des champs doit être rempli :
+
+
category.id
+
category.name
+
+
+
+
+
category.id
+
Optionnel
+
Entier (Integer)
+
Entier (Integer) > 0. Correspond à l'ID numérique interne de la catégorie du composant.
+
+
+
category.name
+
Optionnel
+
Chaîne (String)
+
Chaîne non vide si category.id n'est pas fourni.
+
+
+
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns
+ Colonnes attendues :
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns.note
+
+ Remarque : Aucun mappage n'est effectué avec des composants spécifiques issus de la gestion des catégories.
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.table
+
+
+
+
+
Champ
+
Condition
+
Type de Données
+
Description
+
+
+
+
+
Id
+
Optionnel
+
Entier
+
Champ libre. Un numéro d'identification unique pour chaque composant.
+
+
+
Designeur
+
Optionnel
+
Chaîne
+
Champ libre. Une référence de désignation unique du composant sur le PCB, par exemple, "R1" pour la résistance 1. Utilisé pour nommer la position au sein du groupe de composants.
+
+
+
Boîtier
+
Optionnel
+
Chaîne
+
Champ libre. Le type ou format d'encapsulation du composant, par exemple, "0805" pour des résistances CMS.
+
+
+
Quantité
+
Obligatoire
+
Entier
+
Le nombre de composants identiques nécessaires pour créer une instance unique d'un ensemble.
+
+
+
Désignation
+
Obligatoire
+
Chaîne
+
La description ou la fonction du composant, par exemple, la valeur de résistance "10kΩ" ou la valeur de condensateur "100nF". Utilisé comme nom dans l'entrée de la nomenclature (BOM).
+
+
+
Fournisseur et réf
+
Optionnel
+
Chaîne
+
Champ libre. Peut inclure, par exemple, des informations spécifiques au distributeur.
+
+
+
+ ]]>
+
+
+
+
+
+ typeahead.parts.part.name
+ %name% (pièce)
+
+
+
+
+ typeahead.parts.assembly.name
+ %name% (assemblage)
+
+
+
+
+ projects.build.form.part
+ Pièce "%name%"
+
+
+
+
+ projects.build.form.assembly
+ Assemblage "%name%"
+
+
+
+
+ projects.build.form.assembly.bom.entry
+ %name% (%quantity% nécessaires)
+
+
+
+
+ projects.build.form.assembly.bom.entry.no.stock
+ Non disponible en stock
+
+
diff --git a/translations/messages.it.xlf b/translations/messages.it.xlf
index 828304eb..0ea57d9f 100644
--- a/translations/messages.it.xlf
+++ b/translations/messages.it.xlf
@@ -4742,6 +4742,18 @@ Se è stato fatto in modo errato o se un computer non è più attendibile, puoi
Nome
+
+
+ part.table.name.value.for_part
+ %value% (Componente)
+
+
+
+
+ part.table.name.value.for_assembly
+ %value% (Assemblaggio)
+
+ Part-DB1\src\DataTables\PartsDataTable.php:178
@@ -9806,6 +9818,18 @@ Element 3
Componente
+
+
+ project.bom.assembly
+ Assemblaggio
+
+
+
+
+ project.bom.partOrAssembly
+ Selezione
+
+ project.bom.add_entry
@@ -9884,6 +9908,42 @@ Element 3
Archiviato
+
+
+ assembly.edit.status
+ Stato
+
+
+
+
+ assembly.status.draft
+ Bozza
+
+
+
+
+ assembly.status.planning
+ In pianificazione
+
+
+
+
+ assembly.status.in_production
+ In produzione
+
+
+
+
+ assembly.status.finished
+ Completato
+
+
+
+
+ assembly.status.archived
+ Archiviato
+
+ part.new_build_part.error.build_part_already_exists
@@ -10160,6 +10220,12 @@ Element 3
a magazzino
+
+
+ project.builds.no_stock
+ nessuna scorta specificata
+
+ project.builds.needed
@@ -10232,6 +10298,12 @@ Element 3
Lotto target
+
+
+ project.build.builds_part_lot_label
+ %name% (%quantity% richiesti)
+
+ project.builds.number_of_builds
@@ -12346,6 +12418,622 @@ Notare che non è possibile impersonare un utente disattivato. Quando si prova a
Visualizza la versione esterna
+
+
+ assembly.label
+ Assemblaggio
+
+
+
+
+ assembly.caption
+ Assemblaggio
+
+
+
+
+ perm.assemblies
+ Assemblaggi
+
+
+
+
+ assembly_bom_entry.label
+ Componenti
+
+
+
+
+ assembly.labelp
+ Assemblaggi
+
+
+
+
+ assembly.edit
+ Modifica assemblaggio
+
+
+
+
+ assembly.new
+ Nuovo assemblaggio
+
+
+
+
+ assembly.edit.associated_build_part
+ Componente associato
+
+
+
+
+ assembly.edit.associated_build_part.add
+ Aggiungi componente
+
+
+
+
+ assembly.edit.associated_build.hint
+ Questo componente rappresenta le istanze fabbricate dell'assemblaggio. Specificare se sono necessarie istanze fabbricate. In caso contrario, le quantità di componenti verranno utilizzate solo durante la costruzione del progetto corrispondente.
+
+
+
+
+ assembly.edit.bom.import_bom
+ Importa componenti
+
+
+
+
+ log.database_updated.failed
+ __log.database_updated.failed
+
+
+
+
+ log.database_updated.old_version
+ __log.database_updated.old_version
+
+
+
+
+ log.database_updated.new_version
+ __log.database_updated.new_version
+
+
+
+
+ tree.tools.edit.assemblies
+ Assemblaggi
+
+
+
+
+ assembly.bom_import.flash.success
+ %count% componente(i) importato(i) correttamente nell'assemblaggio.
+
+
+
+
+ assembly.bom_import.flash.invalid_entries
+ Errore di convalida! Controlla il file importato!
+
+
+
+
+ assembly.bom_import.flash.invalid_file
+ Impossibile importare il file. Assicurati di aver selezionato il tipo di file corretto. Messaggio di errore: %message%
+
+
+
+
+ assembly.bom.quantity
+ Quantità
+
+
+
+
+ assembly.bom.mountnames
+ Nomi di montaggio
+
+
+
+
+ assembly.bom.instockAmount
+ Quantità in magazzino
+
+
+
+
+ assembly.info.title
+ Informazioni sul gruppo
+
+
+
+
+ assembly.info.info.label
+ Info
+
+
+
+
+ assembly.info.sub_assemblies.label
+ Sotto-gruppi
+
+
+
+
+ assembly.info.builds.label
+ Costruzioni
+
+
+
+
+ assembly.info.bom_add_parts
+ Aggiungi componenti
+
+
+
+
+ assembly.builds.check_assembly_status
+ "%assembly_status%". Controlla se vuoi davvero costruire il gruppo con questo stato!]]>
+
+
+
+
+ assembly.builds.build_not_possible
+ Costruzione impossibile: componenti insufficienti disponibili
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock
+ Non ci sono abbastanza componenti in magazzino per costruire questo progetto %number_of_builds% volte. Mancano i seguenti componenti:
+
+
+
+
+ assembly.builds.build_possible
+ Costruzione possibile
+
+
+
+
+ assembly.builds.number_of_builds_possible
+ %max_builds% unità di questo gruppo.]]>
+
+
+
+
+ assembly.builds.number_of_builds
+ Numero di gruppi da costruire
+
+
+
+
+ assembly.build.btn_build
+ Costruire
+
+
+
+
+ assembly.builds.no_stocked_builds
+ Numero di istanze costruite in magazzino
+
+
+
+
+ assembly.info.bom_entries_count
+ Componenti
+
+
+
+
+ assembly.info.sub_assemblies_count
+ Sotto-gruppi
+
+
+
+
+ assembly.builds.stocked
+ disponibile
+
+
+
+
+ assembly.builds.needed
+ necessari
+
+
+
+
+ assembly.add_parts_to_assembly
+ Aggiungi componenti al gruppo
+
+
+
+
+ assembly.bom.name
+ Nome
+
+
+
+
+ assembly.bom.comment
+ Commenti
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock_n
+ Non ci sono abbastanza componenti in magazzino per costruire questo gruppo %number_of_builds% volte. Mancano i seguenti componenti:
+
+
+
+
+ assembly.build.help
+ Seleziona i magazzini da cui prelevare i componenti necessari per la costruzione (e in che quantità). Spunta ciascun componente una volta prelevato, oppure utilizza la casella superiore per selezionare tutto in una volta.
+
+
+
+
+ assembly.build.required_qty
+ Quantità necessaria
+
+
+
+
+ assembly.import_bom
+ Importa componenti per il gruppo
+
+
+
+
+ assembly.bom.part
+ Componente
+
+
+
+
+ assembly.bom.add_entry
+ Aggiungi voce
+
+
+
+
+ assembly.bom.price
+ Prezzo
+
+
+
+
+ assembly.build.dont_check_quantity
+ Non controllare le quantità
+
+
+
+
+ assembly.build.dont_check_quantity.help
+ Se abilitata, le quantità selezionate verranno rimosse dal magazzino indipendentemente dalla loro sufficienza per il gruppo.
+
+
+
+
+ assembly.build.add_builds_to_builds_part
+ Aggiungi istanze costruite al gruppo componenti
+
+
+
+
+ assembly.bom_import.type
+ Tipo
+
+
+
+
+ assembly.bom_import.type.json
+ JSON per un gruppo
+
+
+
+
+ assembly.bom_import.type.kicad_pcbnew
+ CSV (KiCAD Pcbnew)
+
+
+
+
+ assembly.bom_import.clear_existing_bom
+ Elimina i componenti esistenti prima di importare
+
+
+
+
+ assembly.bom_import.clear_existing_bom.help
+ Se abilitata, tutti i componenti esistenti verranno rimossi e sostituiti dai dati importati.
+
+
+
+
+ assembly.import_bom.template.header.json
+ Template di importazione JSON per un gruppo
+
+
+
+
+ assembly.import_bom.template.header.kicad_pcbnew
+ Template di importazione CSV (KiCAD Pcbnew BOM) per un gruppo
+
+
+
+
+ assembly.bom_import.template.entry.name
+ Nome del componente nel gruppo
+
+
+
+
+ assembly.bom_import.template.entry.part.mpnr
+ Numero univoco del componente del produttore
+
+
+
+
+ assembly.bom_import.template.entry.part.ipn
+ IPN univoco del componente
+
+
+
+
+ assembly.bom_import.template.entry.part.name
+ Nome univoco del componente
+
+
+
+
+ assembly.bom_import.template.entry.part.manufacturer.name
+ Nome univoco del produttore
+
+
+
+
+ assembly.bom_import.template.entry.part.category.name
+ Nome univoco della categoria
+
+
+
+
+ assembly.bom_import.template.json.table
+
+
+
+
+
Campo
+
Condizione
+
Tipo di dato
+
Descrizione
+
+
+
+
+
quantity
+
Obbligatorio
+
Numero decimale (Float)
+
Deve essere presente e contenere un valore decimale (Float) maggiore di 0,0.
+
+
+
name
+
Opzionale
+
Stringa (String)
+
Se presente, deve essere una stringa non vuota.
+
+
+
part
+
Opzionale
+
Oggetto/Array
+
+ Se fornito, deve essere un oggetto/un array e almeno uno dei campi deve essere compilato:
+
+
part.id
+
part.name
+
+
+
+
+
part.id
+
Opzionale
+
Intero (Integer)
+
Intero (Integer) > 0. Corrisponde all'ID numerico interno di Part-DB per il componente.
+
+
+
part.name
+
Opzionale
+
Stringa (String)
+
Stringa non vuota se part.mpnr o part.ipn non sono forniti.
+
+
+
part.mpnr
+
Opzionale
+
Stringa (String)
+
Stringa non vuota se part.name o part.ipn non sono forniti.
+
+
+
part.ipn
+
Opzionale
+
Stringa (String)
+
Stringa non vuota se part.name o part.mpnr non sono forniti.
+
+
+
part.description
+
Opzionale
+
Stringa o null
+
Se presente, deve essere una stringa non vuota o null.
+
+
+
part.manufacturer
+
Opzionale
+
Oggetto/Array
+
+ Se presente, deve essere un oggetto/un array e almeno uno dei campi deve essere compilato:
+
+
manufacturer.id
+
manufacturer.name
+
+
+
+
+
manufacturer.id
+
Opzionale
+
Intero (Integer)
+
Intero (Integer) > 0. Corrisponde all'ID numerico interno del produttore.
+
+
+
manufacturer.name
+
Opzionale
+
Stringa (String)
+
Stringa non vuota se manufacturer.id non è fornito.
+
+
+
part.category
+
Opzionale
+
Oggetto/Array
+
+ Se presente, deve essere un oggetto/un array e almeno uno dei campi deve essere compilato:
+
+
category.id
+
category.name
+
+
+
+
+
category.id
+
Opzionale
+
Intero (Integer)
+
Intero (Integer) > 0. Corrisponde all'ID numerico interno della categoria del componente.
+
+
+
category.name
+
Opzionale
+
Stringa (String)
+
Stringa non vuota se category.id non è fornito.
+
+
+
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns
+ Colonne previste:
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns.note
+
+ Nota: Non viene eseguita alcuna mappatura con componenti specifici dalla gestione delle categorie.
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.table
+
+
+
+
+
Campo
+
Condizione
+
Tipo di Dati
+
Descrizione
+
+
+
+
+
Id
+
Opzionale
+
Intero
+
Campo libero. Un numero identificativo unico per ogni componente.
+
+
+
Designatore
+
Opzionale
+
Stringa
+
Campo libero. Un designatore di riferimento unico per il componente sul PCB, ad esempio, "R1" per il resistore 1. Utilizzato per nominare la posizione nel gruppo di componenti.
+
+
+
Package
+
Opzionale
+
Stringa
+
Campo libero. Il tipo o formato del contenitore del componente, ad esempio, "0805" per le resistenze SMD.
+
+
+
Quantità
+
Obbligatorio
+
Intero
+
Il numero di componenti identici necessari per creare una singola unità di assemblaggio.
+
+
+
Designazione
+
Obbligatorio
+
Stringa
+
La descrizione o la funzione del componente, ad esempio, il valore della resistenza "10kΩ" o il valore del condensatore "100nF". Utilizzato per il nome nell'entrata della lista dei materiali (BOM).
+
+
+
Fornitore e riferimento
+
Opzionale
+
Stringa
+
Campo libero. Può includere, ad esempio, informazioni specifiche del distributore.
+
+
+ ]]>
+
+
+
+
+
+ typeahead.parts.part.name
+ %name%(部品)
+
+
+
+
+ typeahead.parts.assembly.name
+ %name%(アセンブリ)
+
+
+
+
+ projects.build.form.part
+ 部品「%name%」
+
+
+
+
+ projects.build.form.assembly
+ アセンブリ「%name%」
+
+
+
+
+ projects.build.form.assembly.bom.entry
+ %name% (必要数量: %quantity%)
+
+
+
+
+ projects.build.form.assembly.bom.entry.no.stock
+ 在庫なし
+
+
diff --git a/translations/messages.nl.xlf b/translations/messages.nl.xlf
index 760533d7..b7392b4d 100644
--- a/translations/messages.nl.xlf
+++ b/translations/messages.nl.xlf
@@ -724,5 +724,729 @@
Weet u zeker dat u wilt doorgaan?
+
+
+ part.table.name.value.for_part
+ %value% (Onderdeel)
+
+
+
+
+ part.table.name.value.for_assembly
+ %value% (Samenstelling)
+
+
+
+
+ project.bom.assembly
+ Assemblage
+
+
+
+
+ project.bom.partOrAssembly
+ Selectie
+
+
+
+
+ assembly.edit.status
+ Κατάσταση
+
+
+
+
+ assembly.status.draft
+ Προσχέδιο
+
+
+
+
+ assembly.status.planning
+ Υπό σχεδιασμό
+
+
+
+
+ assembly.status.in_production
+ Σε παραγωγή
+
+
+
+
+ assembly.status.finished
+ Ολοκληρώθηκε
+
+
+
+
+ assembly.status.archived
+ Αρχειοθετήθηκε
+
+
+
+
+ project.builds.no_stock
+ geen voorraad opgegeven
+
+
+
+
+ project.build.builds_part_lot_label
+ %name% (%quantity% vereist)
+
+
+
+
+ assembly.label
+ Assemblage
+
+
+
+
+ assembly.caption
+ Assemblage
+
+
+
+
+ perm.assemblies
+ Assemblages
+
+
+
+
+ assembly_bom_entry.label
+ Componenten
+
+
+
+
+ assembly.labelp
+ Assemblages
+
+
+
+
+ assembly.edit
+ Assemblage bewerken
+
+
+
+
+ assembly.new
+ Nieuwe assemblage
+
+
+
+
+ assembly.edit.associated_build_part
+ Geassocieerd onderdeel
+
+
+
+
+ assembly.edit.associated_build_part.add
+ Onderdeel toevoegen
+
+
+
+
+ assembly.edit.associated_build.hint
+ Dit onderdeel vertegenwoordigt de vervaardigde exemplaren van de assemblage. Geef aan of vervaardigde exemplaren nodig zijn. Zo niet, dan worden de aantallen onderdelen alleen gebruikt bij het bouwen van het bijbehorende project.
+
+
+
+
+ assembly.edit.bom.import_bom
+ Componenten importeren
+
+
+
+
+ log.database_updated.failed
+ __log.database_updated.failed
+
+
+
+
+ log.database_updated.old_version
+ __log.database_updated.old_version
+
+
+
+
+ log.database_updated.new_version
+ __log.database_updated.new_version
+
+
+
+
+ tree.tools.edit.assemblies
+ Assemblages
+
+
+
+
+ assembly.bom_import.flash.success
+ %count% component(en) zijn succesvol geïmporteerd in de assemblage.
+
+
+
+
+ assembly.bom_import.flash.invalid_entries
+ Validatiefout! Controleer het geïmporteerde bestand!
+
+
+
+
+ assembly.bom_import.flash.invalid_file
+ Het bestand kon niet worden geïmporteerd. Controleer of je het correcte bestandstype hebt geselecteerd. Foutmelding: %message%
+
+
+
+
+ assembly.bom.quantity
+ Aantal
+
+
+
+
+ assembly.bom.mountnames
+ Montagenamen
+
+
+
+
+ assembly.bom.instockAmount
+ Beschikbaar in voorraad
+
+
+
+
+ assembly.info.title
+ Assemblage-informatie
+
+
+
+
+ assembly.info.info.label
+ Informatie
+
+
+
+
+ assembly.info.sub_assemblies.label
+ Subassemblages
+
+
+
+
+ assembly.info.builds.label
+ Bouw
+
+
+
+
+ assembly.info.bom_add_parts
+ Onderdelen toevoegen
+
+
+
+
+ assembly.builds.check_assembly_status
+ "%assembly_status%". Bevestig dat je hiermee wilt doorgaan!]]>
+
+
+
+
+ assembly.builds.build_not_possible
+ Bouwen is niet mogelijk: niet voldoende onderdelen beschikbaar
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock
+ Er zijn niet voldoende onderdelen in voorraad om %number_of_builds% keer te bouwen. De volgende onderdelen ontbreken:
+
+
+
+
+ assembly.builds.build_possible
+ Bouwen mogelijk
+
+
+
+
+ assembly.builds.number_of_builds_possible
+ %max_builds% assemblages te bouwen.]]>
+
+
+
+
+ assembly.builds.number_of_builds
+ Aantal te bouwen assemblages
+
+
+
+
+ assembly.build.btn_build
+ Bouwen
+
+
+
+
+ assembly.builds.no_stocked_builds
+ Aantal geassembleerde onderdelen op voorraad
+
+
+
+
+ assembly.info.bom_entries_count
+ Onderdelen
+
+
+
+
+ assembly.info.sub_assemblies_count
+ Subgroepen
+
+
+
+
+ assembly.builds.stocked
+ Op voorraad
+
+
+
+
+ assembly.builds.needed
+ Nodig
+
+
+
+
+ assembly.add_parts_to_assembly
+ Onderdelen toevoegen aan assemblage
+
+
+
+
+ assembly.bom.name
+ Naam
+
+
+
+
+ assembly.bom.comment
+ Notities
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock_n
+ Er zijn niet genoeg onderdelen op voorraad om deze assemblage %number_of_builds% keer te bouwen. Van de volgende onderdelen is er niet genoeg op voorraad:
+
+
+
+
+ assembly.build.help
+ Selecteer uit welke voorraden de benodigde onderdelen voor de bouw gehaald moeten worden (en in welke hoeveelheid). Vink elk onderdeel afzonderlijk aan als het is verwijderd, of gebruik de bovenste selectievak om alle selectievakjes in één keer aan te vinken.
+
+
+
+
+ assembly.build.required_qty
+ Benodigde hoeveelheid
+
+
+
+
+ assembly.import_bom
+ Importeer onderdelen voor assemblage
+
+
+
+
+ assembly.bom.part
+ Onderdeel
+
+
+
+
+ assembly.bom.add_entry
+ Voer item in
+
+
+
+
+ assembly.bom.price
+ Prijs
+
+
+
+
+ assembly.build.dont_check_quantity
+ Hoeveelheden niet controleren
+
+
+
+
+ assembly.build.dont_check_quantity.help
+ Als deze optie is geselecteerd, worden de geselecteerde hoeveelheden uit de voorraad verwijderd, ongeacht of er meer of minder onderdelen zijn dan nodig is voor de assemblage.
+
+
+
+
+ assembly.build.add_builds_to_builds_part
+ Gemaakte instanties toevoegen aan onderdeel van assemblage
+
+
+
+
+ assembly.build.required_qty
+ Benodigd aantal
+
+
+
+
+ assembly.build.yes_button
+ Ja
+
+
+
+
+ assembly.build.no_button
+ Nee
+
+
+
+
+ assembly.confirmation.required
+
+
+
+
+
+ assembly.build.success
+ De assemblage is succesvol gebouwd!
+
+
+
+
+ assembly.build.cancelled
+ De assemblage is geannuleerd.
+
+
+
+
+ assembly.bom_import.type
+ Type
+
+
+
+
+ assembly.bom_import.type.json
+ JSON voor assemblage
+
+
+
+
+ assembly.bom_import.type.kicad_pcbnew
+ CSV (KiCAD Pcbnew)
+
+
+
+
+ assembly.bom_import.clear_existing_bom
+ Bestaande BOM wissen vóór importeren
+
+
+
+
+ assembly.bom_import.clear_existing_bom.help
+ Wanneer dit is ingeschakeld, worden alle bestaande BOM-items verwijderd en vervangen door de geïmporteerde gegevens.
+
+
+
+
+ assembly.import_bom.template.header.json
+ JSON-sjabloon voor assemblage
+
+
+
+
+ assembly.import_bom.template.header.kicad_pcbnew
+ CSV-sjabloon voor assemblage (KiCAD Pcbnew BOM)
+
+
+
+
+ assembly.bom_import.template.entry.name
+ Naam van onderdeel in de assemblage
+
+
+
+
+ assembly.bom_import.template.entry.part.mpnr
+ Onderdeelnummer van de fabrikant
+
+
+
+
+ assembly.bom_import.template.entry.part.ipn
+ Unieke IPN van het onderdeel
+
+
+
+
+ assembly.bom_import.template.entry.part.name
+ Unieke naam van het onderdeel
+
+
+
+
+ assembly.bom_import.template.entry.part.manufacturer.name
+ Unieke naam van de fabrikant
+
+
+
+
+ assembly.bom_import.template.entry.part.category.name
+ Unieke naam van de categorie
+
+
+
+
+ assembly.bom_import.template.json.table
+
+
+
+
+
Veld
+
Voorwaarde
+
Gegevenstype
+
Beschrijving
+
+
+
+
+
quantity
+
Verplicht veld
+
Kommagetal (Float)
+
Moet opgegeven zijn en bevat een kommagetal (Float) dat groter is dan 0,0.
+
+
+
name
+
Optioneel
+
String
+
Indien aanwezig, moet het een niet-lege string zijn.
+
+
+
part
+
Optioneel
+
Object/Array
+
+ Indien opgegeven, moet het een object/array zijn en ten minste één van de velden ingevuld zijn:
+
+
part.id
+
part.name
+
+
+
+
+
part.id
+
Optioneel
+
Geheel getal (Integer)
+
Geheel getal (Integer) > 0. Komt overeen met de interne numerieke ID van het onderdeel in de Part-DB.
+
+
+
part.name
+
Optioneel
+
String
+
Niet-lege string, indien geen part.mpnr- of part.ipn-vermelding is gegeven.
+
+
+
part.mpnr
+
Optioneel
+
String
+
Niet-lege string, indien geen part.name- of part.ipn-vermelding is gegeven.
+
+
+
part.ipn
+
Optioneel
+
String
+
Niet-lege string, indien geen part.name- of part.mpnr-vermelding is gegeven.
+
+
+
part.description
+
Optioneel
+
String of null
+
Indien aanwezig, moet het een niet-lege string zijn of null.
+
+
+
part.manufacturer
+
Optioneel
+
Object/Array
+
+ Indien aanwezig, moet het een object/array zijn en ten minste één van de velden ingevuld zijn:
+
+
manufacturer.id
+
manufacturer.name
+
+
+
+
+
manufacturer.id
+
Optioneel
+
Geheel getal (Integer)
+
Geheel getal (Integer) > 0. Komt overeen met de interne numerieke ID van de fabrikant.
+
+
+
manufacturer.name
+
Optioneel
+
String
+
Niet-lege string, indien geen manufacturer.id-vermelding is gegeven.
+
+
+
part.category
+
Optioneel
+
Object/Array
+
+ Indien aanwezig, moet het een object/array zijn en ten minste één van de velden ingevuld zijn:
+
+
category.id
+
category.name
+
+
+
+
+
category.id
+
Optioneel
+
Geheel getal (Integer)
+
Geheel getal (Integer) > 0. Komt overeen met de interne numerieke ID van de categorie van het onderdeel.
+
+
+
category.name
+
Optioneel
+
String
+
Niet-lege string, indien geen category.id-vermelding is gegeven.
+
+
+
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns
+ Verwachte kolommen:
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.exptected_columns.note
+
+ Opmerking: Er wordt geen mapping uitgevoerd met specifieke componenten uit de categoriebeheer.
+ ]]>
+
+
+
+
+
+ assembly.bom_import.template.kicad_pcbnew.table
+
+
+
+
+
Veld
+
Voorwaarde
+
Gegevenstype
+
Beschrijving
+
+
+
+
+
Id
+
Optioneel
+
Integer
+
Vrij veld. Een unieke identificatienummer voor elk onderdeel.
+
+
+
Ontwerper
+
Optioneel
+
Tekst
+
Vrij veld. Een unieke referentie-ontwerper voor het onderdeel op de PCB, bijvoorbeeld "R1" voor weerstand 1. Gebruikt voor de naamgeving van de plaatsing in de componentgroep.
+
+
+
Omhulsel
+
Optioneel
+
Tekst
+
Vrij veld. Het type of de vormfactor van het onderdeel, bijvoorbeeld "0805" voor SMD-weerstanden.
+
+
+
Aantal
+
Verplicht
+
Integer
+
Het aantal identieke onderdelen dat nodig is om een enkele instantie van een assemblage te maken.
+
+
+
Aanduiding
+
Verplicht
+
Tekst
+
De beschrijving of functie van het onderdeel, bijvoorbeeld de weerstandswaarde "10kΩ" of de condensatorwaarde "100nF". Wordt gebruikt als naam in de BOM-invoer.
+
+
+
Leverancier en referentie
+
Optioneel
+
Tekst
+
Vrij veld. Kan bijvoorbeeld informatie bevatten die specifiek is voor de distributeur.
+
+
+
+ ]]>
+
+
+
+
+
+ typeahead.parts.part.name
+ %name% (Onderdeel)
+
+
+
+
+ typeahead.parts.assembly.name
+ %name% (Assemblage)
+
+
+
+
+ projects.build.form.part
+ Onderdelen "%name%"
+
+
+
+
+ projects.build.form.assembly
+ Assemblage "%name%"
+
+
+
+
+ projects.build.form.assembly.bom.entry
+ %name% (%quantity% benodigd)
+
+
+
+
+ projects.build.form.assembly.bom.entry.no.stock
+ niet op voorraad
+
+
diff --git a/translations/messages.pl.xlf b/translations/messages.pl.xlf
index b769e273..7290e5fe 100644
--- a/translations/messages.pl.xlf
+++ b/translations/messages.pl.xlf
@@ -4745,6 +4745,18 @@ Jeśli zrobiłeś to niepoprawnie lub komputer nie jest już godny zaufania, mo
Nazwa
+
+
+ part.table.name.value.for_part
+ %value%(部品)
+
+
+
+
+ part.table.name.value.for_assembly
+ %value%(アセンブリ)
+
+ Part-DB1\src\DataTables\PartsDataTable.php:178
@@ -9809,6 +9821,18 @@ Element 3
Komponent
+
+
+ project.bom.assembly
+ Zespół
+
+
+
+
+ project.bom.partOrAssembly
+ Wybór
+
+ project.bom.add_entry
@@ -9887,6 +9911,42 @@ Element 3
Zarchiwizowany
+
+
+ assembly.edit.status
+ Status
+
+
+
+
+ assembly.status.draft
+ Wersja robocza
+
+
+
+
+ assembly.status.planning
+ W planowaniu
+
+
+
+
+ assembly.status.in_production
+ W produkcji
+
+
+
+
+ assembly.status.finished
+ Zakończony
+
+
+
+
+ assembly.status.archived
+ Zarchiwizowany
+
+ part.new_build_part.error.build_part_already_exists
@@ -10163,6 +10223,12 @@ Element 3
dostępny
+
+
+ project.builds.no_stock
+ brak podanego stanu magazynowego
+
+ project.builds.needed
@@ -10235,6 +10301,12 @@ Element 3
Partia docelowa
+
+
+ project.build.builds_part_lot_label
+ %name% (%quantity% wymagane)
+
+ project.builds.number_of_builds
@@ -12223,5 +12295,621 @@ Należy pamiętać, że nie możesz udawać nieaktywnych użytkowników. Jeśli
Wygenerowany kod
+
+
+ assembly.label
+ Zespół
+
+
+
+
+ assembly.caption
+ Zespół
+
+
+
+
+ perm.assemblies
+ Zespoły
+
+
+
+
+ assembly_bom_entry.label
+ Komponenty
+
+
+
+
+ assembly.labelp
+ Zespoły
+
+
+
+
+ assembly.edit
+ Edytuj zespół
+
+
+
+
+ assembly.new
+ Nowy zespół
+
+
+
+
+ assembly.edit.associated_build_part
+ Powiązany komponent
+
+
+
+
+ assembly.edit.associated_build_part.add
+ Dodaj komponent
+
+
+
+
+ assembly.edit.associated_build.hint
+ Ten komponent reprezentuje wyprodukowane instancje zespołu. Określ, czy są potrzebne wyprodukowane instancje. W przeciwnym razie ilości komponentów zostaną zastosowane tylko podczas budowy odpowiedniego projektu.
+
+
+
+
+ assembly.edit.bom.import_bom
+ Importuj komponenty
+
+
+
+
+ log.database_updated.failed
+ __log.database_updated.failed
+
+
+
+
+ log.database_updated.old_version
+ __log.database_updated.old_version
+
+
+
+
+ log.database_updated.new_version
+ __log.database_updated.new_version
+
+
+
+
+ tree.tools.edit.assemblies
+ Zespoły
+
+
+
+
+ assembly.bom_import.flash.success
+ Pomyślnie zaimportowano %count% komponent(ów) do zespołu.
+
+
+
+
+ assembly.bom_import.flash.invalid_entries
+ Błąd walidacji! Sprawdź zaimportowany plik!
+
+
+
+
+ assembly.bom_import.flash.invalid_file
+ Nie udało się zaimportować pliku. Sprawdź, czy wybrano poprawny typ pliku. Komunikat błędu: %message%
+
+
+
+
+ assembly.bom.quantity
+ Ilość
+
+
+
+
+ assembly.bom.mountnames
+ Nazwy montażu
+
+
+
+
+ assembly.bom.instockAmount
+ Ilość na magazynie
+
+
+
+
+ assembly.info.title
+ Informacje o zespole
+
+
+
+
+ assembly.info.info.label
+ Informacje
+
+
+
+
+ assembly.info.sub_assemblies.label
+ Podzespoły
+
+
+
+
+ assembly.info.builds.label
+ Budowa
+
+
+
+
+ assembly.info.bom_add_parts
+ Dodaj części
+
+
+
+
+ assembly.builds.check_assembly_status
+ "%assembly_status%". Upewnij się, że chcesz zbudować zespół w tym statusie!]]>
+
+
+
+
+ assembly.builds.build_not_possible
+ Budowa niemożliwa: niewystarczająca ilość części
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock
+ Brakuje wystarczającej ilości części na magazynie, aby zbudować ten projekt %number_of_builds% razy. Brakujące części to:
+
+
+
+
+ assembly.builds.build_possible
+ Budowa możliwa
+
+
+
+
+ assembly.builds.number_of_builds_possible
+ %max_builds% egzemplarzy tego zespołu.]]>
+
+
+
+
+ assembly.builds.number_of_builds
+ Liczba budowanych egzemplarzy
+
+
+
+
+ assembly.build.btn_build
+ Zbuduj
+
+
+
+
+ assembly.builds.no_stocked_builds
+ Liczba zbudowanych i zmagazynowanych egzemplarzy
+
+
+
+
+ assembly.info.bom_entries_count
+ Elementy
+
+
+
+
+ assembly.info.sub_assemblies_count
+ Podzespoły
+
+
+
+
+ assembly.builds.stocked
+ na magazynie
+
+
+
+
+ assembly.builds.needed
+ potrzebne
+
+
+
+
+ assembly.add_parts_to_assembly
+ Dodaj części do zespołu
+
+
+
+
+ assembly.bom.name
+ Nazwa
+
+
+
+
+ assembly.bom.comment
+ Uwagi
+
+
+
+
+ assembly.builds.following_bom_entries_miss_instock_n
+ Brakuje wystarczającej ilości części na magazynie, aby zbudować ten zespół %number_of_builds% razy. Brakujące części to:
+
+
+
+
+ assembly.build.help
+ Wybierz, z których magazynów mają być pobrane części potrzebne do budowy (i w jakiej ilości). Zaznacz każdą pozycję, jeśli części zostały pobrane, lub użyj głównego pola wyboru, aby zaznaczyć wszystkie na raz.
+
+
+
+
+ assembly.build.required_qty
+ Wymagana ilość
+
+
+
+
+ assembly.import_bom
+ Importuj części dla zespołu
+
+
+
+
+ assembly.bom.part
+ Część
+
+
+
+
+ assembly.bom.add_entry
+ Dodaj pozycję
+
+
+
+
+ assembly.bom.price
+ Cena
+
+
+
+
+ assembly.build.dont_check_quantity
+ Nie sprawdzaj ilości
+
+
+
+
+ assembly.build.dont_check_quantity.help
+ Jeśli opcja jest wybrana, zadeklarowana ilość zostanie odjęta z magazynu, niezależnie od tego, czy jest wystarczająca do budowy zespołu.
+
+
+
+
+ assembly.build.add_builds_to_builds_part
+ Dodaj zbudowane egzemplarze jako część zespołu
+
+
+
+
+ assembly.bom_import.type
+ Typ
+
+
+
+
+ assembly.bom_import.type.json
+ JSON dla zespołu
+
+
+
+
+ assembly.bom_import.type.kicad_pcbnew
+ CSV (KiCAD Pcbnew)
+
+
+
+
+ assembly.bom_import.clear_existing_bom
+ Usuń istniejące dane przed importem
+
+
+
+
+ assembly.bom_import.clear_existing_bom.help
+ Jeśli wybrano, wszystkie istniejące wpisy części zostaną usunięte i zastąpione danymi z importu.
+
+
+
+
+ assembly.import_bom.template.header.json
+ Szablon importu JSON dla zespołu
+
+
+
+
+ assembly.import_bom.template.header.kicad_pcbnew
+ Szablon importu CSV (KiCAD Pcbnew BOM) dla zespołu
+
+
+
+
+ assembly.bom_import.template.entry.name
+ Nazwa części w zespole
+
+
+
+
+ assembly.bom_import.template.entry.part.mpnr
+ Unikalny numer katalogowy producenta
+
+
+
+
+ assembly.bom_import.template.entry.part.ipn
+ Unikalny IPN części
+
+
+
+
+ assembly.bom_import.template.entry.part.name
+ Unikalna nazwa części
+
+
+
+
+ assembly.bom_import.template.entry.part.manufacturer.name
+ Unikalna nazwa producenta
+
+
+
+
+ assembly.bom_import.template.entry.part.category.name
+ Unikalna nazwa kategorii
+
+
+
+
+ assembly.bom_import.template.json.table
+
+
+
+
+
Pole
+
Warunek
+
Typ danych
+
Opis
+
+
+
+
+
quantity
+
Wymagane
+
Typ zmiennoprzecinkowy (Float)
+
Musi być obecne i zawierać wartość zmiennoprzecinkową (Float) większą niż 0,0.
+
+
+
name
+
Opcjonalne
+
Ciąg znaków (String)
+
Jeśli obecne, musi być niepustym ciągiem znaków.
+
+
+
part
+
Opcjonalne
+
Obiekt/Tablica
+
+ Jeśli podane, musi być obiektem/tablicą i co najmniej jedno z poniższych pól musi być wypełnione:
+
+
part.id
+
part.name
+
+
+
+
+
part.id
+
Opcjonalne
+
Liczba całkowita (Integer)
+
Liczba całkowita (Integer) > 0. Odpowiada wewnętrznemu numerowi ID komponentu w Part-DB.
+
+
+
part.name
+
Opcjonalne
+
Ciąg znaków (String)
+
Niepusty ciąg znaków, jeśli part.mpnr ani part.ipn nie są podane.
+
+
+
part.mpnr
+
Opcjonalne
+
Ciąg znaków (String)
+
Niepusty ciąg znaków, jeśli part.name ani part.ipn nie są podane.
+
+
+
part.ipn
+
Opcjonalne
+
Ciąg znaków (String)
+
Niepusty ciąg znaków, jeśli part.name ani part.mpnr nie są podane.
+
+
+
part.description
+
Opcjonalne
+
Ciąg znaków lub null
+
Jeśli obecne, musi być niepustym ciągiem znaków lub null.
+
+
+
part.manufacturer
+
Opcjonalne
+
Obiekt/Tablica
+
+ Jeśli obecne, musi być obiektem/tablicą i co najmniej jedno z poniższych pól musi być wypełnione:
+
+
manufacturer.id
+
manufacturer.name
+
+
+
+
+
manufacturer.id
+
Opcjonalne
+
Liczba całkowita (Integer)
+
Liczba całkowita (Integer) > 0. Odpowiada wewnętrznemu identyfikatorowi numerowemu producenta.
+
+
+
manufacturer.name
+
Opcjonalne
+
Ciąg znaków (String)
+
Niepusty ciąg znaków, jeśli manufacturer.id nie jest podane.
+
+
+
part.category
+
Opcjonalne
+
Obiekt/Tablica
+
+ Jeśli obecne, musi być obiektem/tablicą i co najmniej jedno z poniższych pól musi być wypełnione:
+
+
category.id
+
category.name
+
+
+
+
+
category.id
+
Opcjonalne
+
Liczba całkowita (Integer)
+
Liczba całkowita (Integer) > 0. Odpowiada wewnętrznemu numerowi ID kategorii komponentu.
+
+
+
category.name
+
Opcjonalne
+
Ciąg znaków (String)
+
Niepusty ciąg znaków, jeśli category.id nie jest podane.
Произвольное поле. Уникальный идентификационный номер для каждого компонента.
+
+
+
Дизигнатор
+
Опционально
+
Строка
+
Произвольное поле. Уникальный референсный обозначитель компонента на печатной плате, например, "R1" для резистора 1. Используется для именования позиции в группе компонентов.
+
+
+
Корпус
+
Опционально
+
Строка
+
Произвольное поле. Тип или форм-фактор корпуса компонента, например, "0805" для SMD-резисторов.
+
+
+
Количество
+
Обязательно
+
Целое число
+
Количество одинаковых компонентов, необходимое для создания одной единицы сборки.
+
+
+
Обозначение
+
Обязательно
+
Строка
+
Описание или функция компонента, например, номинал резистора "10kΩ" или номинал конденсатора "100nF". Используется в качестве имени в позиции списка материалов (BOM).
+
+
+
Поставщик и ссылка
+
Опционально
+
Строка
+
Произвольное поле. Может содержать, например, информацию, специфичную для дистрибьютора.
+
+
+ ]]>
+
+
+
+
+
+ typeahead.parts.part.name
+ %name%(零件)
+
+
+
+
+ typeahead.parts.assembly.name
+ %name%(组件)
+
+
+
+
+ projects.build.form.part
+ 零件“%name%”
+
+
+
+
+ projects.build.form.assembly
+ 组件“%name%”
+
+
+
+
+ projects.build.form.assembly.bom.entry
+ %name%(需数量:%quantity%)
+
+
+
+
+ projects.build.form.assembly.bom.entry.no.stock
+ 库存不足
+
+
diff --git a/translations/validators.cs.xlf b/translations/validators.cs.xlf
index c298266a..06354533 100644
--- a/translations/validators.cs.xlf
+++ b/translations/validators.cs.xlf
@@ -245,6 +245,12 @@
Musíte vybrat díl pro položku BOM dílu nebo nastavit název pro položku BOM bez dílu.
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ Je povoleno vybrat pouze jednu součástku nebo sestavu. Upravit prosím svůj výběr!
+
+ project.bom_entry.name_already_in_bom
@@ -365,5 +371,23 @@
Neplatný kód. Zkontrolujte, zda je vaše ověřovací aplikace správně nastavena a zda je čas správně nastaven jak na serveru, tak na ověřovacím zařízení.
+
+
+ assembly.bom_entry.part_already_in_bom
+ Tato součást již existuje ve skupině!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ Již existuje součást s tímto názvem!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ Musíte vybrat součást nebo nastavit název pro nesoučást!
+
+
diff --git a/translations/validators.da.xlf b/translations/validators.da.xlf
index 21149f0e..9a9dea4c 100644
--- a/translations/validators.da.xlf
+++ b/translations/validators.da.xlf
@@ -245,6 +245,12 @@
Du skal vælge en komponent eller angive et navn til en ikke-komponent styklistepost!
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ Det er kun tilladt at vælge én del eller en samling. Venligst tilpas dit valg!
+
+ project.bom_entry.name_already_in_bom
@@ -341,5 +347,23 @@
Denne leverandørstregkodeværdi er allerede brugt til en anden beholdning. Stregkoden skal være unik!
+
+
+ assembly.bom_entry.part_already_in_bom
+ Denne del eksisterer allerede i gruppen!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ Der findes allerede en del med dette navn!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ Du skal vælge en del eller sætte et navn for en ikke-del!
+
+
diff --git a/translations/validators.de.xlf b/translations/validators.de.xlf
index 5cccd388..203382c8 100644
--- a/translations/validators.de.xlf
+++ b/translations/validators.de.xlf
@@ -242,7 +242,13 @@
validator.project.bom_entry.name_or_part_needed
- Sie müssen ein Bauteil auswählen, oder einen Namen für ein nicht-Bauteil BOM-Eintrag setzen!
+ Sie müssen ein Bauteil bzw. eine Baugruppe auswählen, oder einen Namen für ein nicht-Bauteil BOM-Eintrag setzen!
+
+
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ Es darf nur ein Bauteil oder eine Baugruppe ausgewählt werden. Bitte passen Sie Ihre Auswahl an!
@@ -365,5 +371,23 @@
Ungültiger Code. Überprüfen Sie, ob die Authenticator App korrekt eingerichtet ist und ob der Server und das Gerät beide die korrekte Uhrzeit eingestellt haben.
+
+
+ assembly.bom_entry.part_already_in_bom
+ Dieses Bauteil existiert bereits in der Gruppe!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ Es gibt bereits einen Bauteil mit diesem Namen!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ Sie müssen ein Bauteil auswählen, oder einen Namen für ein nicht-Bauteil setzen!
+
+
diff --git a/translations/validators.el.xlf b/translations/validators.el.xlf
index 9ef5b3de..ee27863c 100644
--- a/translations/validators.el.xlf
+++ b/translations/validators.el.xlf
@@ -7,5 +7,29 @@
Ο εσωτερικός αριθμός εξαρτήματος πρέπει να είναι μοναδικός. {{ value }} χρησιμοποιείται ήδη!
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ Det er kun tilladt at vælge én del eller en samling. Venligst tilpas dit valg!
+
+
+
+
+ assembly.bom_entry.part_already_in_bom
+ Αυτό το εξάρτημα υπάρχει ήδη στην ομάδα!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ Υπάρχει ήδη ένα εξάρτημα με αυτό το όνομα!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ Πρέπει να επιλέξετε ένα εξάρτημα ή να βάλετε ένα όνομα για ένα μη εξάρτημα!
+
+
diff --git a/translations/validators.en.xlf b/translations/validators.en.xlf
index 6ad14460..86525b6a 100644
--- a/translations/validators.en.xlf
+++ b/translations/validators.en.xlf
@@ -242,7 +242,13 @@
validator.project.bom_entry.name_or_part_needed
- You have to choose a part for a part BOM entry or set a name for a non-part BOM entry.
+ You have to select a part or assembly, or set a name for a non-component Bom entry!
+
+
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ Only one part or assembly may be selected. Please modify your selection!
@@ -365,5 +371,23 @@
Invalid code. Check that your authenticator app is set up correctly and that both the server and authentication device has the time set correctly.
+
+
+ assembly.bom_entry.part_already_in_bom
+ __assembly.bom_entry.part_already_in_bom
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ __assembly.bom_entry.name_already_in_bom
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ __validator.assembly.bom_entry.name_or_part_needed
+
+
diff --git a/translations/validators.fr.xlf b/translations/validators.fr.xlf
index e86ab9cc..e9bf3259 100644
--- a/translations/validators.fr.xlf
+++ b/translations/validators.fr.xlf
@@ -203,5 +203,29 @@
L'emplacement de stockage a été marqué comme "Composant seul", par conséquent aucun nouveau composant ne peut être ajouté.
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ Seule une pièce ou un assemblage peut être sélectionné. Veuillez ajuster votre sélection!
+
+
+
+
+ assembly.bom_entry.part_already_in_bom
+ Cette pièce existe déjà dans le groupe!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ Il existe déjà une pièce avec ce nom!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ Vous devez sélectionner une pièce ou attribuer un nom pour un non-élément !
+
+
diff --git a/translations/validators.hr.xlf b/translations/validators.hr.xlf
index 29e32a16..9c9c3960 100644
--- a/translations/validators.hr.xlf
+++ b/translations/validators.hr.xlf
@@ -245,6 +245,12 @@
Morate odabrati dio za unos u BOM ili postaviti naziv za unos koji nije dio.
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ Dozvoljeno je odabrati samo jednu komponentu ili sklop. Molimo prilagodite svoj odabir!
+
+ project.bom_entry.name_already_in_bom
@@ -359,5 +365,23 @@
Neispravan kod. Provjerite je li vaša aplikacija za autentifikaciju ispravno postavljena i jesu li poslužitelj i uređaj za autentifikaciju ispravno postavili vrijeme.
+
+
+ assembly.bom_entry.part_already_in_bom
+ Ovaj dio već postoji u grupi!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ Već postoji dio s tim nazivom!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ Morate odabrati dio ili unijeti naziv za nedio!
+
+
diff --git a/translations/validators.it.xlf b/translations/validators.it.xlf
index 7043f4f3..2f747bc5 100644
--- a/translations/validators.it.xlf
+++ b/translations/validators.it.xlf
@@ -245,6 +245,12 @@
È necessario selezionare un componente o assegnare un nome ad una voce BOM che non indica un componente!
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ È consentito selezionare solo una parte o un assieme. Si prega di modificare la selezione!
+
+ project.bom_entry.name_already_in_bom
@@ -359,5 +365,23 @@
Codice non valido. Controlla che la tua app di autenticazione sia impostata correttamente e che sia il server che il dispositivo di autenticazione abbiano l'ora impostata correttamente.
+
+
+ assembly.bom_entry.part_already_in_bom
+ Questa parte è già presente nel gruppo!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ Esiste già una parte con questo nome!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ È necessario selezionare una parte o inserire un nome per un non-parte!
+
+
diff --git a/translations/validators.ja.xlf b/translations/validators.ja.xlf
index 01cc3f77..0156ffef 100644
--- a/translations/validators.ja.xlf
+++ b/translations/validators.ja.xlf
@@ -203,5 +203,29 @@
新しい部品を追加できません。保管場所は「1つの部品のみ」とマークされています。
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ 部品またはアセンブリのみ選択可能です。選択内容を調整してください!
+
+
+
+
+ assembly.bom_entry.part_already_in_bom
+ この部品はすでにグループに存在します!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ この名前の部品はすでに存在します!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ 部品を選択するか、非部品の名前を入力する必要があります!
+
+
diff --git a/translations/validators.pl.xlf b/translations/validators.pl.xlf
index 6c997798..2cc4aef4 100644
--- a/translations/validators.pl.xlf
+++ b/translations/validators.pl.xlf
@@ -245,6 +245,12 @@
Należy wybrać część dla wpisu BOM części lub ustawić nazwę dla wpisu BOM niebędącego częścią.
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ Można wybrać tylko jedną część lub zespół. Proszę dostosować swój wybór!
+
+ project.bom_entry.name_already_in_bom
@@ -359,5 +365,23 @@
Nieprawidłowy kod. Sprawdź, czy aplikacja uwierzytelniająca jest poprawnie skonfigurowana i czy zarówno serwer, jak i urządzenie uwierzytelniające mają poprawnie ustawiony czas.
+
+
+ assembly.bom_entry.part_already_in_bom
+ Ten element już istnieje w grupie!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ Element o tej nazwie już istnieje!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ Musisz wybrać element lub przypisać nazwę dla elementu niestandardowego!
+
+
diff --git a/translations/validators.ru.xlf b/translations/validators.ru.xlf
index 0f97c478..4049b453 100644
--- a/translations/validators.ru.xlf
+++ b/translations/validators.ru.xlf
@@ -245,6 +245,12 @@
Вам необходимо выбрать компонент или задать имя для BOM, не относящейся к компоненту!
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ Можно выбрать только деталь или сборку. Пожалуйста, измените ваш выбор!
+
+ project.bom_entry.name_already_in_bom
@@ -359,5 +365,23 @@
Неверный код. Проверьте, что приложение аутентификации настроено правильно и что на сервере и устройстве аутентификации установлено правильное время.
+
+
+ assembly.bom_entry.part_already_in_bom
+ Эта деталь уже существует в группе!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ Деталь с таким названием уже существует!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ Необходимо выбрать деталь или ввести название для недетали!
+
+
diff --git a/translations/validators.zh.xlf b/translations/validators.zh.xlf
index 08c9f014..3eab5c4e 100644
--- a/translations/validators.zh.xlf
+++ b/translations/validators.zh.xlf
@@ -245,6 +245,12 @@
您必须为 BOM 条目选择部件,或为非部件 BOM 条目设置名称。
+
+
+ validator.project.bom_entry.only_part_or_assembly_allowed
+ 只能选择一个零件或组件。请修改您的选择!
+
+ project.bom_entry.name_already_in_bom
@@ -347,5 +353,23 @@
由于技术限制,在32位系统中无法选择2038年1月19日之后的日期!
+
+
+ assembly.bom_entry.part_already_in_bom
+ 此零件已存在于组中!
+
+
+
+
+ assembly.bom_entry.name_already_in_bom
+ 具有此名称的零件已存在!
+
+
+
+
+ validator.assembly.bom_entry.name_or_part_needed
+ 必须选择零件或为非零件指定名称!
+
+