Verkaufs- und Einkaufslieferschein um Standardlagerverfahren erweitert (#2284)
[kivitendo-erp.git] / SL / InstanceConfiguration.pm
index ac14b0a..97ece86 100644 (file)
@@ -15,9 +15,9 @@ sub init {
 
   $self->{data} = selectfirst_hashref_query($::form, $::form->get_standard_dbh, qq|SELECT * FROM defaults|);
 
-  my $curr            =  $self->{data}->{curr} || '';
-  $curr               =~ s/\s+//g;
-  $self->{currencies} =  [ split m/:/, $curr ];
+  #To get all currencies and the default currency:
+  ($self->{data}->{curr}) = selectrow_query($::form, $::form->get_standard_dbh, qq|SELECT name AS curr FROM currencies WHERE id = (SELECT currency_id FROM defaults)|);
+  $self->{currencies}     = [ map { $_->{name} } selectall_hashref_query($::form, $::form->get_standard_dbh, qq|SELECT name FROM currencies ORDER BY id|) ];
 
   return $self;
 }
@@ -25,13 +25,13 @@ sub init {
 sub get_default_currency {
   my ($self) = @_;
 
-  return ($self->get_currencies)[0];
+  return $self->{data}->{curr};
 }
 
 sub get_currencies {
   my ($self) = @_;
 
-  return $self->{currencies} ? @{ $self->{currencies} } : ();
+  return @{ $self->{currencies} };
 }
 
 sub get_accounting_method {
@@ -144,6 +144,42 @@ sub get_purchase_delivery_order_show_delete {
   return $self->{data}->{purchase_delivery_order_show_delete};
 }
 
+sub get_default_warehouse_id {
+  my ($self) = @_;
+  return ($self->{data}->{warehouse_id});
+}
+
+sub get_default_bin_id {
+  my ($self) = @_;
+  return ($self->{data}->{bin_id});
+}
+sub get_default_warehouse_id_ignore_onhand {
+  my ($self) = @_;
+  return ($self->{data}->{warehouse_id_ignore_onhand});
+}
+
+sub get_default_bin_id_ignore_onhand {
+  my ($self) = @_;
+  return ($self->{data}->{bin_id_ignore_onhand});
+}
+
+
+sub get_transfer_default {
+  my ($self) = @_;
+  return ($self->{data}->{transfer_default});
+}
+
+sub get_transfer_default_use_master_default_bin {
+  my ($self) = @_;
+  return ($self->{data}->{transfer_default_use_master_default_bin});
+}
+
+sub get_transfer_default_ignore_onhand {
+  my ($self) = @_;
+  return ($self->{data}->{transfer_default_ignore_onhand});
+}
+
+
 1;
 
 __END__
@@ -158,7 +194,7 @@ SL::InstanceConfiguration - Provide instance-specific configuration data
 
 =head1 SYNOPSIS
 
-Lx-Office has two configuration levels: installation specific
+kivitendo has two configuration levels: installation specific
 (provided by the global variable C<%::lx_office_conf>) and instance
 specific. The latter is provided by a global instance of this class,
 C<$::instance_conf>.
@@ -256,6 +292,35 @@ corresponding record type (true or false).
 Returns the default behavior for showing the delete button for the
 corresponding record type (true or false).
 
+=item C<get_default_warehouse_id>
+
+Returns the default warehouse_id
+
+=item C<get_default_bin_id>
+
+Returns the default bin_id
+
+=item C<get_default_warehouse_id_ignore_onhand>
+
+Returns the default warehouse_id for transfers without checking the
+current stock quantity
+
+=item C<get_default_bin_id_ignore_onhand>
+
+Returns the default bin_id for transfers without checking the.
+current stock quantity
+
+
+
+=item C<get_transfer_default>
+
+=item C<get_transfer_default_use_master_default_bin>
+
+=item C<get_transfer_default_ignore_onhand>
+
+Returns the default behavior for the transfer out default feature (true or false)
+
+
 =back
 
 =head1 BUGS