1 package SL::InstanceConfiguration;
10 return bless {}, $class;
16 $self->{data} = selectfirst_hashref_query($::form, $::form->get_standard_dbh, qq|SELECT * FROM defaults|);
18 #To get all currencies and the default currency:
19 ($self->{data}->{curr}) = selectrow_query($::form, $::form->get_standard_dbh, qq|SELECT name AS curr FROM currencies WHERE id = (SELECT currency_id FROM defaults)|);
20 $self->{currencies} = [ map { $_->{name} } selectall_hashref_query($::form, $::form->get_standard_dbh, qq|SELECT name FROM currencies ORDER BY id|) ];
25 sub get_default_currency {
28 return $self->{data}->{curr};
34 return @{ $self->{currencies} };
37 sub get_accounting_method {
39 return $self->{data}->{accounting_method};
42 sub get_inventory_system {
44 return $self->{data}->{inventory_system};
47 sub get_profit_determination {
49 return $self->{data}->{profit_determination};
52 sub get_is_changeable {
54 return $self->{data}->{is_changeable};
57 sub get_ir_changeable {
59 return $self->{data}->{ir_changeable};
62 sub get_ar_changeable {
64 return $self->{data}->{ar_changeable};
67 sub get_ap_changeable {
69 return $self->{data}->{ap_changeable};
72 sub get_gl_changeable {
74 return $self->{data}->{gl_changeable};
77 sub get_datev_check_on_sales_invoice {
79 return $self->{data}->{datev_check_on_sales_invoice};
82 sub get_datev_check_on_purchase_invoice {
84 return $self->{data}->{datev_check_on_purchase_invoice};
87 sub get_datev_check_on_ar_transaction {
89 return $self->{data}->{datev_check_on_ar_transaction};
92 sub get_datev_check_on_ap_transaction {
94 return $self->{data}->{datev_check_on_ap_transaction};
97 sub get_datev_check_on_gl_transaction {
99 return $self->{data}->{datev_check_on_gl_transaction};
102 sub get_show_bestbefore {
104 return $self->{data}->{show_bestbefore};
107 sub get_is_show_mark_as_paid {
109 return $self->{data}->{is_show_mark_as_paid};
112 sub get_ir_show_mark_as_paid {
114 return $self->{data}->{ir_show_mark_as_paid};
117 sub get_ar_show_mark_as_paid {
119 return $self->{data}->{ar_show_mark_as_paid};
122 sub get_ap_show_mark_as_paid {
124 return $self->{data}->{ap_show_mark_as_paid};
127 sub get_sales_order_show_delete {
129 return $self->{data}->{sales_order_show_delete};
132 sub get_purchase_order_show_delete {
134 return $self->{data}->{purchase_order_show_delete};
137 sub get_sales_delivery_order_show_delete {
139 return $self->{data}->{sales_delivery_order_show_delete};
142 sub get_purchase_delivery_order_show_delete {
144 return $self->{data}->{purchase_delivery_order_show_delete};
147 sub get_default_warehouse_id {
149 return ($self->{data}->{warehouse_id});
152 sub get_default_bin_id {
154 return ($self->{data}->{bin_id});
156 sub get_default_warehouse_id_ignore_onhand {
158 return ($self->{data}->{warehouse_id_ignore_onhand});
161 sub get_default_bin_id_ignore_onhand {
163 return ($self->{data}->{bin_id_ignore_onhand});
167 sub get_transfer_default {
169 return ($self->{data}->{transfer_default});
172 sub get_transfer_default_use_master_default_bin {
174 return ($self->{data}->{transfer_default_use_master_default_bin});
177 sub get_transfer_default_ignore_onhand {
179 return ($self->{data}->{transfer_default_ignore_onhand});
181 # currently unused - value is set via audit_control (Bücherkontrolle)
182 sub get_max_future_booking_interval {
184 return ($self->{data}->{max_future_booking_interval});
199 SL::InstanceConfiguration - Provide instance-specific configuration data
203 kivitendo has two configuration levels: installation specific
204 (provided by the global variable C<%::lx_office_conf>) and instance
205 specific. The latter is provided by a global instance of this class,
214 Creates a new instance. Does not read the configuration.
218 Reads the configuration from the database. Returns C<$self>.
220 =item C<get_currencies>
222 Returns an array of configured currencies.
224 =item C<get_default_currency>
226 Returns the default currency or undef if no currency has been
229 =item C<get_accounting_method>
231 Returns the default accounting method, accrual or cash
233 =item C<get_inventory_system>
235 Returns the default inventory system, perpetual or periodic
237 =item C<get_profit_determination>
239 Returns the default profit determination method, balance or income
242 =item C<get_is_changeable>
244 =item C<get_ir_changeable>
246 =item C<get_ar_changeable>
248 =item C<get_ap_changeable>
250 =item C<get_gl_changeable>
252 Returns if and when these record types are changeable or deleteable after
253 posting. 0 means never, 1 means always and 2 means on the same day.
255 =item C<get_datev_check_on_sales_invoice>
257 Returns true if datev check should be performed on sales invoices
259 =item C<get_datev_check_on_purchase_invoice>
261 Returns true if datev check should be performed on purchase invoices
263 =item C<get_datev_check_on_ar_transaction>
265 Returns true if datev check should be performed on ar transactions
267 =item C<get_datev_check_on_ap_transaction>
269 Returns true if datev check should be performed on ap transactions
271 =item C<get_datev_check_on_gl_transaction>
273 Returns true if datev check should be performed on gl transactions
275 =item C<get_show_bestbefore>
277 Returns the default behavior for showing best before date, true or false
279 =item C<get_is_show_mark_as_paid>
281 =item C<get_ir_show_mark_as_paid>
283 =item C<get_ar_show_mark_as_paid>
285 =item C<get_ap_show_mark_as_paid>
287 Returns the default behavior for showing the mark as paid button for the
288 corresponding record type (true or false).
290 =item C<get_sales_order_show_delete>
292 =item C<get_purchase_order_show_delete>
294 =item C<get_sales_delivery_order_show_delete>
296 =item C<get_purchase_delivery_order_show_delete>
298 Returns the default behavior for showing the delete button for the
299 corresponding record type (true or false).
301 =item C<get_default_warehouse_id>
303 Returns the default warehouse_id
305 =item C<get_default_bin_id>
307 Returns the default bin_id
309 =item C<get_default_warehouse_id_ignore_onhand>
311 Returns the default warehouse_id for transfers without checking the
312 current stock quantity
314 =item C<get_default_bin_id_ignore_onhand>
316 Returns the default bin_id for transfers without checking the.
317 current stock quantity
321 =item C<get_transfer_default>
323 =item C<get_transfer_default_use_master_default_bin>
325 =item C<get_transfer_default_ignore_onhand>
327 Returns the default behavior for the transfer out default feature (true or false)
329 =item C<get_max_future_booking_interval>
331 Returns the maximum interval value for future bookings
337 Updates to the I<defaults> table require that the instance
338 configuration is re-read. This has not been implemented yet.
342 Moritz Bunkus E<lt>m.bunkus@linet-services.deE<gt>