use strict;
-use base qw(SL::DB::Object);
-
-__PACKAGE__->meta->setup(
- table => 'defaults',
-
- columns => [
- inventory_accno_id => { type => 'integer' },
- income_accno_id => { type => 'integer' },
- expense_accno_id => { type => 'integer' },
- fxgain_accno_id => { type => 'integer' },
- fxloss_accno_id => { type => 'integer' },
- invnumber => { type => 'text' },
- sonumber => { type => 'text' },
- weightunit => { type => 'varchar', length => 5 },
- businessnumber => { type => 'text' },
- version => { type => 'varchar', length => 8 },
- curr => { type => 'text' },
- closedto => { type => 'date' },
- revtrans => { type => 'boolean', default => 'false' },
- ponumber => { type => 'text' },
- sqnumber => { type => 'text' },
- rfqnumber => { type => 'text' },
- customernumber => { type => 'text' },
- vendornumber => { type => 'text' },
- audittrail => { type => 'boolean', default => 'false' },
- articlenumber => { type => 'text' },
- servicenumber => { type => 'text' },
- coa => { type => 'text' },
- itime => { type => 'timestamp', default => 'now()' },
- mtime => { type => 'timestamp' },
- rmanumber => { type => 'text' },
- cnnumber => { type => 'text' },
- dunning_ar_amount_fee => { type => 'integer' },
- dunning_ar_amount_interest => { type => 'integer' },
- dunning_ar => { type => 'integer' },
- pdonumber => { type => 'text' },
- sdonumber => { type => 'text' },
- ar_paid_accno_id => { type => 'integer' },
- id => { type => 'serial', not_null => 1 },
- ],
-
- primary_key_columns => [ 'id' ],
-
- allow_inline_column_values => 1,
+use parent qw(SL::DB::Object);
+
+__PACKAGE__->meta->table('defaults');
+
+__PACKAGE__->meta->columns(
+ accounting_method => { type => 'text' },
+ address_city => { type => 'text' },
+ address_country => { type => 'text' },
+ address_street1 => { type => 'text' },
+ address_street2 => { type => 'text' },
+ address_zipcode => { type => 'text' },
+ advance_payment_clearing_chart_id => { type => 'integer' },
+ advance_payment_taxable_19_id => { type => 'integer' },
+ advance_payment_taxable_7_id => { type => 'integer' },
+ allow_new_purchase_delivery_order => { type => 'boolean', default => 'true', not_null => 1 },
+ allow_new_purchase_invoice => { type => 'boolean', default => 'true', not_null => 1 },
+ allow_sales_invoice_from_sales_order => { type => 'boolean', default => 'true', not_null => 1 },
+ allow_sales_invoice_from_sales_quotation => { type => 'boolean', default => 'true', not_null => 1 },
+ always_record_links_from_order => { type => 'boolean', default => 'false' },
+ ap_add_doc => { type => 'boolean', default => 'false', not_null => 1 },
+ ap_changeable => { type => 'integer', default => 2, not_null => 1 },
+ ap_chart_id => { type => 'integer' },
+ ap_show_mark_as_paid => { type => 'boolean', default => 'true' },
+ ar_add_doc => { type => 'boolean', default => 'false', not_null => 1 },
+ ar_changeable => { type => 'integer', default => 2, not_null => 1 },
+ ar_chart_id => { type => 'integer' },
+ ar_paid_accno_id => { type => 'integer' },
+ ar_show_mark_as_paid => { type => 'boolean', default => 'true' },
+ articlenumber => { type => 'text' },
+ assemblynumber => { type => 'text' },
+ assortmentnumber => { type => 'text' },
+ balance_startdate_method => { type => 'text' },
+ bcc_to_login => { type => 'boolean', default => 'false', not_null => 1 },
+ bin_id => { type => 'integer' },
+ bin_id_ignore_onhand => { type => 'integer' },
+ businessnumber => { type => 'text' },
+ carry_over_account_chart_id => { type => 'integer' },
+ closedto => { type => 'date' },
+ cnnumber => { type => 'text' },
+ co_ustid => { type => 'text' },
+ coa => { type => 'text' },
+ company => { type => 'text' },
+ contact_departments_use_textfield => { type => 'boolean' },
+ contact_titles_use_textfield => { type => 'boolean' },
+ create_part_if_not_found => { type => 'boolean', default => 'false' },
+ create_qrbill_invoices => { type => 'integer' },
+ create_zugferd_invoices => { type => 'integer' },
+ currency_id => { type => 'integer', not_null => 1 },
+ customer_hourly_rate => { type => 'numeric', precision => 8, scale => 2 },
+ customer_projects_only_in_sales => { type => 'boolean', default => 'false', not_null => 1 },
+ customer_ustid_taxnummer_unique => { type => 'boolean', default => 'false' },
+ customernumber => { type => 'text' },
+ datev_check_on_ap_transaction => { type => 'boolean', default => 'true' },
+ datev_check_on_ar_transaction => { type => 'boolean', default => 'true' },
+ datev_check_on_gl_transaction => { type => 'boolean', default => 'true' },
+ datev_check_on_purchase_invoice => { type => 'boolean', default => 'true' },
+ datev_check_on_sales_invoice => { type => 'boolean', default => 'true' },
+ datev_export_format => { type => 'enum', check_in => [ 'cp1252', 'cp1252-translit', 'utf-8' ], db_type => 'datev_export_format_enum', default => 'cp1252-translit' },
+ delivery_date_interval => { type => 'integer', default => '0' },
+ deliverydate_on => { type => 'boolean', default => 'true' },
+ disabled_price_sources => { type => 'array' },
+ doc_delete_printfiles => { type => 'boolean', default => 'false' },
+ doc_files => { type => 'boolean', default => 'false' },
+ doc_files_rootpath => { type => 'text', default => './documents' },
+ doc_max_filesize => { type => 'integer', default => 10000000 },
+ doc_storage => { type => 'boolean', default => 'false' },
+ doc_storage_for_attachments => { type => 'text', default => 'Filesystem' },
+ doc_storage_for_documents => { type => 'text', default => 'Filesystem' },
+ doc_storage_for_images => { type => 'text', default => 'Filesystem' },
+ doc_storage_for_shopimages => { type => 'text', default => 'Filesystem' },
+ doc_webdav => { type => 'boolean', default => 'false' },
+ dunning_ar => { type => 'integer' },
+ dunning_ar_amount_fee => { type => 'integer' },
+ dunning_ar_amount_interest => { type => 'integer' },
+ dunning_creator => { type => 'enum', check_in => [ 'current_employee', 'invoice_employee' ], db_type => 'dunning_creator', default => 'current_employee' },
+ duns => { type => 'text' },
+ email_attachment_part_files_checked => { type => 'boolean', default => 'true' },
+ email_attachment_record_files_checked => { type => 'boolean', default => 'true' },
+ email_attachment_vc_files_checked => { type => 'boolean', default => 'true' },
+ email_journal => { type => 'integer', default => 2 },
+ expense_accno_id => { type => 'integer' },
+ fa_bufa_nr => { type => 'text' },
+ fa_dauerfrist => { type => 'text' },
+ fa_steuerberater_city => { type => 'text' },
+ fa_steuerberater_name => { type => 'text' },
+ fa_steuerberater_street => { type => 'text' },
+ fa_steuerberater_tel => { type => 'text' },
+ fa_voranmeld => { type => 'text' },
+ feature_balance => { type => 'boolean', default => 'true', not_null => 1 },
+ feature_datev => { type => 'boolean', default => 'true', not_null => 1 },
+ feature_erfolgsrechnung => { type => 'boolean', default => 'false', not_null => 1 },
+ feature_eurechnung => { type => 'boolean', default => 'true', not_null => 1 },
+ feature_experimental_assortment => { type => 'boolean', default => 'true', not_null => 1 },
+ feature_experimental_order => { type => 'boolean', default => 'true', not_null => 1 },
+ feature_ustva => { type => 'boolean', default => 'true', not_null => 1 },
+ fxgain_accno_id => { type => 'integer' },
+ fxloss_accno_id => { type => 'integer' },
+ gl_add_doc => { type => 'boolean', default => 'false', not_null => 1 },
+ gl_changeable => { type => 'integer', default => 2, not_null => 1 },
+ global_bcc => { type => 'text', default => '' },
+ id => { type => 'serial', not_null => 1 },
+ income_accno_id => { type => 'integer' },
+ inventory_accno_id => { type => 'integer' },
+ inventory_system => { type => 'text' },
+ invnumber => { type => 'text' },
+ invoice_mail_settings => { type => 'enum', check_in => [ 'cp', 'invoice_mail', 'invoice_mail_cc_cp' ], db_type => 'invoice_mail_settings', default => 'cp' },
+ invoice_prevent_browser_back => { type => 'boolean', default => 'false', not_null => 1 },
+ ir_add_doc => { type => 'boolean', default => 'false', not_null => 1 },
+ ir_changeable => { type => 'integer', default => 2, not_null => 1 },
+ ir_show_mark_as_paid => { type => 'boolean', default => 'true' },
+ is_changeable => { type => 'integer', default => 2, not_null => 1 },
+ is_show_mark_as_paid => { type => 'boolean', default => 'true' },
+ is_transfer_out => { type => 'boolean', default => 'false', not_null => 1 },
+ itime => { type => 'timestamp', default => 'now()' },
+ language_id => { type => 'integer' },
+ letternumber => { type => 'integer' },
+ loss_carried_forward_chart_id => { type => 'integer' },
+ max_future_booking_interval => { type => 'integer', default => 360 },
+ mtime => { type => 'timestamp' },
+ normalize_part_descriptions => { type => 'boolean', default => 'true' },
+ normalize_vc_names => { type => 'boolean', default => 'true' },
+ order_always_project => { type => 'boolean', default => 'false' },
+ order_warn_duplicate_parts => { type => 'boolean', default => 'true' },
+ order_warn_no_cusordnumber => { type => 'boolean', default => 'false' },
+ order_warn_no_deliverydate => { type => 'boolean', default => 'true' },
+ parts_image_css => { type => 'text', default => 'border:0;float:left;max-width:250px;margin-top:20px:margin-right:10px;margin-left:10px;' },
+ parts_listing_image => { type => 'boolean', default => 'true' },
+ parts_show_image => { type => 'boolean', default => 'true' },
+ partsgroup_required => { type => 'boolean', default => 'false', not_null => 1 },
+ payments_changeable => { type => 'integer', default => '0', not_null => 1 },
+ pdonumber => { type => 'text' },
+ ponumber => { type => 'text' },
+ precision => { type => 'numeric', default => '0.01', not_null => 1, precision => 15, scale => 5 },
+ print_interpolate_variables_in_positions => { type => 'boolean', default => 'true', not_null => 1 },
+ produce_assembly_same_warehouse => { type => 'boolean', default => 'true' },
+ produce_assembly_transfer_service => { type => 'boolean', default => 'false' },
+ profit_carried_forward_chart_id => { type => 'integer' },
+ profit_determination => { type => 'text' },
+ project_status_id => { type => 'integer' },
+ project_type_id => { type => 'integer' },
+ purchase_delivery_order_check_service => { type => 'boolean', default => 'true' },
+ purchase_delivery_order_check_stocked => { type => 'boolean', default => 'false' },
+ purchase_delivery_order_show_delete => { type => 'boolean', default => 'true' },
+ purchase_order_show_delete => { type => 'boolean', default => 'true' },
+ quick_search_modules => { type => 'array' },
+ rdonumber => { type => 'text' },
+ reqdate_interval => { type => 'integer', default => '0' },
+ reqdate_on => { type => 'boolean', default => 'true' },
+ require_transaction_description_ps => { type => 'boolean', default => 'false', not_null => 1 },
+ requirement_spec_section_order_part_id => { type => 'integer' },
+ revtrans => { type => 'boolean', default => 'false' },
+ rfqnumber => { type => 'text' },
+ rmanumber => { type => 'text' },
+ rndgain_accno_id => { type => 'integer' },
+ rndloss_accno_id => { type => 'integer' },
+ sales_delivery_order_check_service => { type => 'boolean', default => 'true' },
+ sales_delivery_order_check_stocked => { type => 'boolean', default => 'false' },
+ sales_delivery_order_show_delete => { type => 'boolean', default => 'true' },
+ sales_order_show_delete => { type => 'boolean', default => 'true' },
+ sales_purchase_order_ship_missing_column => { type => 'boolean', default => 'false' },
+ sales_purchase_record_numbers_changeable => { type => 'boolean', default => 'false', not_null => 1 },
+ sales_serial_eq_charge => { type => 'boolean', default => 'false', not_null => 1 },
+ sdonumber => { type => 'text' },
+ sepa_creditor_id => { type => 'text' },
+ sepa_reference_add_vc_vc_id => { type => 'boolean', default => 'false' },
+ sepa_set_duedate_as_default_exec_date => { type => 'boolean', default => 'false' },
+ sepa_set_skonto_date_as_default_exec_date => { type => 'boolean', default => 'false' },
+ sepa_set_skonto_date_buffer_in_days => { type => 'integer', default => '0' },
+ servicenumber => { type => 'text' },
+ shipped_qty_require_stock_out => { type => 'boolean', default => 'false', not_null => 1 },
+ show_bestbefore => { type => 'boolean', default => 'false' },
+ show_longdescription_select_item => { type => 'boolean', default => 'false' },
+ show_weight => { type => 'boolean', default => 'false', not_null => 1 },
+ signature => { type => 'text' },
+ sonumber => { type => 'text' },
+ sqnumber => { type => 'text' },
+ stocktaking_bin_id => { type => 'integer' },
+ stocktaking_cutoff_date => { type => 'date' },
+ stocktaking_qty_threshold => { type => 'numeric', default => '0', precision => 25, scale => 5 },
+ stocktaking_warehouse_id => { type => 'integer' },
+ sudonumber => { type => 'text' },
+ taxnumber => { type => 'text' },
+ templates => { type => 'text' },
+ transfer_default => { type => 'boolean', default => 'true' },
+ transfer_default_ignore_onhand => { type => 'boolean', default => 'false' },
+ transfer_default_services => { type => 'boolean', default => 'true' },
+ transfer_default_use_master_default_bin => { type => 'boolean', default => 'false' },
+ transport_cost_reminder_article_number_id => { type => 'integer' },
+ undo_transfer_interval => { type => 'integer', default => 7 },
+ vc_greetings_use_textfield => { type => 'boolean' },
+ vendor_ustid_taxnummer_unique => { type => 'boolean', default => 'false' },
+ vendornumber => { type => 'text' },
+ version => { type => 'varchar', length => 8 },
+ vertreter => { type => 'boolean', default => 'false' },
+ warehouse_id => { type => 'integer' },
+ warehouse_id_ignore_onhand => { type => 'integer' },
+ warn_no_delivery_order_for_invoice => { type => 'boolean', default => 'false' },
+ webdav => { type => 'boolean', default => 'false' },
+ webdav_documents => { type => 'boolean', default => 'false' },
+ weightunit => { type => 'varchar', length => 5 },
+ workflow_po_ap_chart_id => { type => 'integer' },
+);
+
+__PACKAGE__->meta->primary_key_columns([ 'id' ]);
+
+__PACKAGE__->meta->allow_inline_column_values(1);
+
+__PACKAGE__->meta->foreign_keys(
+ ap_chart => {
+ class => 'SL::DB::Chart',
+ key_columns => { ap_chart_id => 'id' },
+ },
+
+ ar_chart => {
+ class => 'SL::DB::Chart',
+ key_columns => { ar_chart_id => 'id' },
+ },
+
+ bin => {
+ class => 'SL::DB::Bin',
+ key_columns => { bin_id => 'id' },
+ },
+
+ bin_obj => {
+ class => 'SL::DB::Bin',
+ key_columns => { bin_id_ignore_onhand => 'id' },
+ },
+
+ carry_over_account_chart => {
+ class => 'SL::DB::Chart',
+ key_columns => { carry_over_account_chart_id => 'id' },
+ },
+
+ currency => {
+ class => 'SL::DB::Currency',
+ key_columns => { currency_id => 'id' },
+ },
+
+ loss_carried_forward_chart => {
+ class => 'SL::DB::Chart',
+ key_columns => { loss_carried_forward_chart_id => 'id' },
+ },
+
+ profit_carried_forward_chart => {
+ class => 'SL::DB::Chart',
+ key_columns => { profit_carried_forward_chart_id => 'id' },
+ },
+
+ project_status => {
+ class => 'SL::DB::ProjectStatus',
+ key_columns => { project_status_id => 'id' },
+ },
+
+ project_type => {
+ class => 'SL::DB::ProjectType',
+ key_columns => { project_type_id => 'id' },
+ },
+
+ requirement_spec_section_order_part => {
+ class => 'SL::DB::Part',
+ key_columns => { requirement_spec_section_order_part_id => 'id' },
+ },
+
+ stocktaking_bin => {
+ class => 'SL::DB::Bin',
+ key_columns => { stocktaking_bin_id => 'id' },
+ },
+
+ stocktaking_warehouse => {
+ class => 'SL::DB::Warehouse',
+ key_columns => { stocktaking_warehouse_id => 'id' },
+ },
+
+ warehouse => {
+ class => 'SL::DB::Warehouse',
+ key_columns => { warehouse_id => 'id' },
+ },
+
+ warehouse_obj => {
+ class => 'SL::DB::Warehouse',
+ key_columns => { warehouse_id_ignore_onhand => 'id' },
+ },
);
1;