{% extends "report/inventree_report_base.html" %} {% load i18n %} {% load inventree_extras %} {% block page_content %} {% with routing=part.mbom_routing %}

{% trans "Manufacturing Traveler & Routing" %}

{% trans "Assembly Process Sheet & Production Operations" %}
{% trans "Date" %}: {% now "Y-m-d H:i" %}
{% if build %}
{% trans "Build Order" %}: {{ build.reference }}
{% trans "Batch Quantity" %}: {{ build.quantity }}
{% endif %}
{% trans "Part IPN / Number" %}
{{ part.IPN|default:part.name }}
{% trans "Part Description" %}
{{ part.description|default:"—" }}
{% trans "Revision" %}
{{ part.revision|default:"—" }}
{% trans "Standard Batch Size" %}
{{ routing.standard_batch_size|default:1 }} {% trans "units" %}
{% if routing and routing.operations.exists %}
{% trans "Setup Time" %}
{{ routing.total_setup_time_minutes|floatformat:1 }} min
{% trans "Run Time / Unit" %}
{{ routing.total_run_time_per_unit_minutes|floatformat:1 }} min
{% trans "Total Labor Cost" %}
{{ routing.total_labor_cost|floatformat:2 }} EUR
{% trans "Total Machine Cost" %}
{{ routing.total_machine_cost|floatformat:2 }} EUR
{% trans "Mfg Cost / Unit" %}
{{ routing.per_unit_manufacturing_cost|floatformat:2 }} EUR
{% for op in routing.top_level_operations %} {% for sub in op.sub_operations.all %} {% endfor %} {% endfor %}
{% trans "Seq" %} {% trans "Operation / Instructions" %} {% trans "Workcenter / Machine" %} {% trans "Labor Role" %} {% trans "Setup" %} {% trans "Cycle/Unit" %} {% trans "Unit Cost" %} {% trans "Sign-Off" %}
{{ op.sequence_number }} {{ op.name }} {% if op.description %}
{{ op.description }}{% endif %}
{% if op.machine_center %} {{ op.machine_center.name }} {{ op.machine_center.hourly_rate|floatformat:2 }} {{ op.machine_center.currency }}/hr {% else %} — {% endif %} {% if op.labor_rate %} {{ op.labor_rate.name }} {{ op.labor_rate.hourly_rate|floatformat:2 }} {{ op.labor_rate.currency }}/hr {% else %} — {% endif %} {{ op.setup_time_minutes|floatformat:1 }} m {{ op.run_time_per_unit_minutes|floatformat:1 }} m {{ op.per_unit_cost|floatformat:2 }}
↳ {{ sub.sequence_number }} {{ sub.name }} {% if sub.description %}
{{ sub.description }}{% endif %}
{% if sub.machine_center %} {{ sub.machine_center.name }} {{ sub.machine_center.hourly_rate|floatformat:2 }} {{ sub.machine_center.currency }}/hr {% else %} — {% endif %} {% if sub.labor_rate %} {{ sub.labor_rate.name }} {{ sub.labor_rate.hourly_rate|floatformat:2 }} {{ sub.labor_rate.currency }}/hr {% else %} — {% endif %} {{ sub.setup_time_minutes|floatformat:1 }} m {{ sub.run_time_per_unit_minutes|floatformat:1 }} m {{ sub.per_unit_cost|floatformat:2 }}
{% if routing.notes %}
{% trans "Process & Quality Notes" %}
{{ routing.notes }}
{% endif %} {% if routing.used_labor_rates or routing.used_machine_centers %}
{% trans "Calculation Rates Reference (Tariffs Applied)" %}
{% if routing.used_labor_rates %} {% trans "Labor" %}: {% for lr in routing.used_labor_rates %} {{ lr.name }}: {{ lr.hourly_rate|floatformat:2 }} {{ lr.currency }}/hr {% endfor %} {% endif %} {% if routing.used_machine_centers %} {% trans "Machines" %}: {% for mc in routing.used_machine_centers %} {{ mc.name }}: {{ mc.hourly_rate|floatformat:2 }} {{ mc.currency }}/hr {% endfor %} {% endif %}
{% endif %}
{% trans "Source Template" %}: {{ routing.source_template.name|default:"Manual Routing" }} {% trans "Last Modified" %}: {{ routing.updated|date:"Y-m-d H:i" }}{% if routing.updated_by %} ({% trans "by" %} {{ routing.updated_by.get_full_name|default:routing.updated_by.username }}){% endif %}
{% else %}
{% trans "No Manufacturing Routing Defined" %}

{% trans "This assembly part does not have an active mBOM routing. Create one in the InvenTree Part Pricing tab to generate shop-floor travelers and labor/machine operation breakdown." %}

{% endif %} {% endwith %} {% endblock page_content %}