Revision dbcf08e9
Von Rolf Fluehmann vor mehr als 8 Jahren hinzugefügt
SL/Controller/Admin.pm | ||
---|---|---|
21 | 21 |
use Rose::Object::MakeMethods::Generic |
22 | 22 |
( |
23 | 23 |
'scalar --get_set_init' => [ qw(client user group printer db_cfg is_locked |
24 |
all_dateformats all_numberformats all_countrycodes all_countrymodes all_stylesheets all_menustyles all_clients all_groups all_users all_rights all_printers
|
|
24 |
all_dateformats all_numberformats all_countrycodes all_stylesheets all_menustyles all_clients all_groups all_users all_rights all_printers |
|
25 | 25 |
all_dbsources all_used_dbsources all_accounting_methods all_inventory_systems all_profit_determinations all_charts) ], |
26 | 26 |
); |
27 | 27 |
|
... | ... | |
552 | 552 |
return [ map { id => $_, title => $cc{$_} }, sort { $cc{$a} cmp $cc{$b} } keys %cc ]; |
553 | 553 |
} |
554 | 554 |
|
555 |
sub init_all_countrymodes { |
|
556 |
my %cm = SL::DefaultManager->country_modes; |
|
557 |
return [ map { id => $_, title => "$_ ($cm{$_})" }, sort keys %cm ]; |
|
558 |
} |
|
559 |
|
|
560 | 555 |
# |
561 | 556 |
# filters |
562 | 557 |
# |
SL/Controller/ClientConfig.pm | ||
---|---|---|
30 | 30 |
my ($self, %params) = @_; |
31 | 31 |
|
32 | 32 |
$::form->{use_templates} = $self->defaults->templates ? 'existing' : 'new'; |
33 |
$::form->{country_mode} = $self->defaults->country_mode; |
|
34 | 33 |
$self->edit_form; |
35 | 34 |
} |
36 | 35 |
|
SL/DB/MetaSetup/Default.pm | ||
---|---|---|
37 | 37 |
customer_hourly_rate => { type => 'numeric', precision => 8, scale => 2 }, |
38 | 38 |
customer_projects_only_in_sales => { type => 'boolean', default => 'false', not_null => 1 }, |
39 | 39 |
customernumber => { type => 'text' }, |
40 |
country_mode => { type => 'text', default => 'DE', not_null => 1 }, |
|
41 | 40 |
datev_check_on_ap_transaction => { type => 'boolean', default => 'true' }, |
42 | 41 |
datev_check_on_ar_transaction => { type => 'boolean', default => 'true' }, |
43 | 42 |
datev_check_on_gl_transaction => { type => 'boolean', default => 'true' }, |
SL/DefaultManager.pm | ||
---|---|---|
34 | 34 |
} |
35 | 35 |
} |
36 | 36 |
|
37 |
sub country_modes { |
|
38 |
my ($self) = @_; |
|
39 |
return ( |
|
40 |
'CH' => 'Switzerland', |
|
41 |
'DE' => 'Germany', |
|
42 |
) |
|
43 |
} |
|
44 |
|
|
45 | 37 |
sub AUTOLOAD { |
46 | 38 |
our $AUTOLOAD; |
47 | 39 |
|
SL/User.pm | ||
---|---|---|
46 | 46 |
use SL::Iconv; |
47 | 47 |
use SL::Inifile; |
48 | 48 |
use SL::System::InstallationLock; |
49 |
use SL::DefaultManager; |
|
49 | 50 |
|
50 | 51 |
use strict; |
51 | 52 |
|
... | ... | |
291 | 292 |
my $dbupdater = SL::DBUpgrade2->new(form => $form, return_on_error => 1, silent => 1)->parse_dbupdate_controls; |
292 | 293 |
# create the tables |
293 | 294 |
$dbupdater->process_query($dbh, "sql/lx-office.sql"); |
294 |
|
|
295 |
# load chart of accounts |
|
296 | 295 |
$dbupdater->process_query($dbh, "sql/$form->{chart}-chart.sql"); |
297 | 296 |
|
298 |
$query = qq|UPDATE defaults SET coa = ?, accounting_method = ?, profit_determination = ?, inventory_system = ?, curr = ?|; |
|
299 |
do_query($form, $dbh, $query, map { $form->{$_} } qw(chart accounting_method profit_determination inventory_system defaultcurrency)); |
|
297 |
$query = qq|UPDATE defaults SET coa = ?|; |
|
298 |
do_query($form, $dbh, $query, map { $form->{$_} } qw(chart)); |
|
299 |
|
|
300 |
$dbh->disconnect; |
|
301 |
|
|
302 |
# update new database |
|
303 |
$self->dbupdate2(form => $form, updater => $dbupdater, database => $form->{db}, silent => 1); |
|
304 |
|
|
305 |
$dbh = SL::DBConnect->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}, SL::DBConnect->get_options) |
|
306 |
or $form->dberror; |
|
307 |
|
|
308 |
$query = "SELECT * FROM currencies WHERE name = ?"; |
|
309 |
my $curr = selectfirst_hashref_query($form, $dbh, $query, $form->{defaultcurrency}); |
|
310 |
if (!$curr->{id}) { |
|
311 |
do_query($form, $dbh, "INSERT INTO currencies (name) VALUES (?)", $form->{defaultcurrency}); |
|
312 |
$curr = selectfirst_hashref_query($form, $dbh, $query, $form->{defaultcurrency}); |
|
313 |
} |
|
314 |
|
|
315 |
$query = qq|UPDATE defaults SET accounting_method = ?, profit_determination = ?, inventory_system = ?, precision = ?, currency_id = ?|; |
|
316 |
do_query($form, $dbh, $query, |
|
317 |
$form->{accounting_method}, |
|
318 |
$form->{profit_determination}, |
|
319 |
$form->{inventory_system}, |
|
320 |
$form->parse_amount(\%::myconfig, $form->{precision_as_number}), |
|
321 |
$curr->{id}, |
|
322 |
); |
|
300 | 323 |
|
301 | 324 |
$dbh->disconnect; |
302 | 325 |
|
... | ... | |
424 | 447 |
|
425 | 448 |
sub get_default_myconfig { |
426 | 449 |
my ($self_or_class, %user_config) = @_; |
450 |
my $defaults = SL::DefaultManager->new($::lx_office_conf{system}->{default_manager}); |
|
427 | 451 |
|
428 | 452 |
return ( |
429 |
countrycode => 'de',
|
|
453 |
countrycode => $defaults->language('de'),
|
|
430 | 454 |
css_path => 'css', # Needed for menunew, see SL::Layout::Base::get_stylesheet_for_user |
431 |
dateformat => 'dd.mm.yy',
|
|
432 |
numberformat => '1.000,00',
|
|
433 |
stylesheet => 'kivitendo.css',
|
|
434 |
timeformat => 'hh:mm',
|
|
455 |
dateformat => $defaults->dateformat('dd.mm.yy'),
|
|
456 |
numberformat => $defaults->numberformat('1.000,00'),
|
|
457 |
stylesheet => $defaults->stylesheet('kivitendo.css'),
|
|
458 |
timeformat => $defaults->timeformat('hh:mm'),
|
|
435 | 459 |
%user_config, |
436 | 460 |
); |
437 | 461 |
} |
sql/Pg-upgrade2/defaults_add_country_mode.sql | ||
---|---|---|
1 |
-- @tag: defaults_add_country_mode |
|
2 |
-- @description: adds new column 'country_mode' (ISO-3166) in table defaults used for erp.ini |
|
3 |
-- @depends: release_3_2_0 |
|
4 |
ALTER TABLE defaults ADD COLUMN country_mode TEXT NOT NULL DEFAULT('DE'); |
|
5 |
|
templates/webpages/admin/create_dataset.html | ||
---|---|---|
21 | 21 |
<td>[% L.input_tag('db', FORM.db, class="initial_focus") %]</td> |
22 | 22 |
</tr> |
23 | 23 |
|
24 |
<tr> |
|
25 |
<th valign="top" align="right" nowrap>[% LxERP.t8('Country') %]</th> |
|
26 |
<td>[% L.select_tag('countrymode', SELF.all_countrymodes, title_key="title", default=(FORM.countrymode), onchange='select_country_defaults(this.value)') %]</td> |
|
27 |
</tr> |
|
28 |
|
|
29 | 24 |
<tr> |
30 | 25 |
<td colspan="1"> </td> |
31 | 26 |
<td><hr size="1" noshade></td> |
Auch abrufbar als: Unified diff
Reapply "country_mode entfernt."
Mit mit neuem Autor neu.