Speicherroutine darf nur auf "customer_vendor_edit" testen
[kivitendo-erp.git] / SL / DB / Part.pm
index fd53dd6..1ef2c1b 100644 (file)
@@ -10,13 +10,12 @@ use SL::DB::MetaSetup::Part;
 use SL::DB::Manager::Part;
 use SL::DB::Chart;
 use SL::DB::Helper::TransNumberGenerator;
+use SL::DB::Helper::CustomVariables (
+  module      => 'IC',
+  cvars_alias => 1,
+);
 
 __PACKAGE__->meta->add_relationships(
-  unit_obj                     => {
-    type         => 'one to one',
-    class        => 'SL::DB::Unit',
-    column_map   => { unit => 'name' },
-  },
   assemblies                     => {
     type         => 'one to many',
     class        => 'SL::DB::Assembly',
@@ -47,12 +46,6 @@ __PACKAGE__->meta->add_relationships(
     class        => 'SL::DB::Translation',
     column_map   => { id => 'parts_id' },
   },
-  custom_variables => {
-    type           => 'one to many',
-    class          => 'SL::DB::CustomVariable',
-    column_map     => { id => 'trans_id' },
-    query_args     => [ config_id => [ \"(SELECT custom_variable_configs.id FROM custom_variable_configs WHERE custom_variable_configs.module = 'IC')" ] ],
-  },
 );
 
 __PACKAGE__->meta->initialize;
@@ -62,7 +55,7 @@ __PACKAGE__->before_save('_before_save_set_partnumber');
 sub _before_save_set_partnumber {
   my ($self) = @_;
 
-  $self->create_trans_number if $self->partnumber eq '';
+  $self->create_trans_number if !$self->partnumber;
   return 1;
 }