my $params = delete($::form->{part}) || { };
delete $params->{id};
- # never overwrite existing partnumber, should be a read-only field anyway
- delete $params->{partnumber} if $self->part->partnumber;
+ # never overwrite existing partnumber for parts in use, should be a read-only field in that case anyway
+ delete $params->{partnumber} if $self->part->partnumber and not $self->orphaned;
$self->part->assign_attributes(%{ $params});
$self->part->bin_id(undef) unless $self->part->warehouse_id;
<tr>
<th align="right">[% 'Part Number' | $T8 %]</th>
[% SET readonly = 1 %]
- [% UNLESS SELF.part.id %][% readonly = 0 %][% END %]
+ [%- IF !SELF.part.id or SELF.part.orphaned %][% readonly = 0 %][% END %]
<td>[% L.input_tag("part.partnumber", SELF.part.partnumber, size=40, readonly=readonly class="initial_focus") %]</td>
</tr>
<tr>