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});
167 SL::InstanceConfiguration - Provide instance-specific configuration data
171 kivitendo has two configuration levels: installation specific
172 (provided by the global variable C<%::lx_office_conf>) and instance
173 specific. The latter is provided by a global instance of this class,
182 Creates a new instance. Does not read the configuration.
186 Reads the configuration from the database. Returns C<$self>.
188 =item C<get_currencies>
190 Returns an array of configured currencies.
192 =item C<get_default_currency>
194 Returns the default currency or undef if no currency has been
197 =item C<get_accounting_method>
199 Returns the default accounting method, accrual or cash
201 =item C<get_inventory_system>
203 Returns the default inventory system, perpetual or periodic
205 =item C<get_profit_determination>
207 Returns the default profit determination method, balance or income
210 =item C<get_is_changeable>
212 =item C<get_ir_changeable>
214 =item C<get_ar_changeable>
216 =item C<get_ap_changeable>
218 =item C<get_gl_changeable>
220 Returns if and when these record types are changeable or deleteable after
221 posting. 0 means never, 1 means always and 2 means on the same day.
223 =item C<get_datev_check_on_sales_invoice>
225 Returns true if datev check should be performed on sales invoices
227 =item C<get_datev_check_on_purchase_invoice>
229 Returns true if datev check should be performed on purchase invoices
231 =item C<get_datev_check_on_ar_transaction>
233 Returns true if datev check should be performed on ar transactions
235 =item C<get_datev_check_on_ap_transaction>
237 Returns true if datev check should be performed on ap transactions
239 =item C<get_datev_check_on_gl_transaction>
241 Returns true if datev check should be performed on gl transactions
243 =item C<get_show_bestbefore>
245 Returns the default behavior for showing best before date, true or false
247 =item C<get_is_show_mark_as_paid>
249 =item C<get_ir_show_mark_as_paid>
251 =item C<get_ar_show_mark_as_paid>
253 =item C<get_ap_show_mark_as_paid>
255 Returns the default behavior for showing the mark as paid button for the
256 corresponding record type (true or false).
258 =item C<get_sales_order_show_delete>
260 =item C<get_purchase_order_show_delete>
262 =item C<get_sales_delivery_order_show_delete>
264 =item C<get_purchase_delivery_order_show_delete>
266 Returns the default behavior for showing the delete button for the
267 corresponding record type (true or false).
269 =item C<get_default_warehouse_id>
271 Returns the default warehouse_id
273 =item C<get_default_bin_id>
275 Returns the default bin_id
281 Updates to the I<defaults> table require that the instance
282 configuration is re-read. This has not been implemented yet.
286 Moritz Bunkus E<lt>m.bunkus@linet-services.deE<gt>