X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=templates%2Fwebpages%2Fcsv_import%2Fform.html;h=568324e28bedb3ae652ef1424ed4276d5292edcc;hb=549f187d3a2b1d15f96c4556714666ed954447bb;hp=b146465a8bbba692c061b74106c9aa65218d35a9;hpb=6759902aeb338d4f5efe8cadadf4103c2bf35849;p=kivitendo-erp.git diff --git a/templates/webpages/csv_import/form.html b/templates/webpages/csv_import/form.html index b146465a8..568324e28 100644 --- a/templates/webpages/csv_import/form.html +++ b/templates/webpages/csv_import/form.html @@ -1,14 +1,21 @@ -[% USE HTML %][% USE LxERP %][% USE L %] - - -
[% FORM.title %]
+[%- USE HTML %] +[%- USE LxERP %] +[%- USE L %] +[%- USE T8 %] +

[% FORM.title %]

[%- INCLUDE 'common/flash.html' %] -
+ + [% L.hidden_tag('form_sent', '1') %] [% L.hidden_tag('action', 'CsvImport/dispatch') %] [% L.hidden_tag('profile.type', SELF.profile.type) %] + [% L.hidden_tag('tmp_profile_id', SELF.profile.id) %] + [%- IF SELF.profile.get('dont_edit_profile') %] + [% L.hidden_tag('force_profile', 1) %] + [% L.hidden_tag('profile.id', SELF.profile.id) %] + [%- ELSE %][%# IF SELF.profile.get('dont_edit_profile') %]

[%- LxERP.t8('Import profiles') %]

@@ -17,20 +24,20 @@ - [%- END %] + [%- END %][%# IF SELF.profile.id %] [%- IF SELF.all_profiles.size %] - [%- END %] + [%- END %][%# IF SELF.all_profiles.size %] @@ -54,59 +61,136 @@
[%- LxERP.t8('Current profile') %]: [%- HTML.escape(SELF.profile.name) %]
[%- LxERP.t8('Existing profiles') %]: - [% L.select_tag('profile.id', L.options_for_select(SELF.all_profiles, title => 'name', default => SELF.profile.id), style => 'width: 300px') %] + [% L.select_tag('profile.id', SELF.all_profiles, title_key = 'name', default = SELF.profile.id, style = 'width: 300px') %] [% L.submit_tag('action_new', LxERP.t8('Load profile')) %] [% L.submit_tag('action_destroy', LxERP.t8('Delete profile'), confirm => LxERP.t8('Do you really want to delete this object?')) %]
[%- LxERP.t8('Save settings as') %]:
- - - - - - [%- FOREACH row = SELF.displayable_columns %] - - - - - [%- END %] -
[%- LxERP.t8('Column name') %][%- LxERP.t8('Meaning') %]
[%- HTML.escape(row.name) %][%- HTML.escape(row.description) %]
+ [%- IF SELF.worker.is_multiplexed %] + + + [%- FOREACH p = SELF.worker.profile %] + + [%- END %][%# FOREACH SELF.worker.profile %] + + + [%- FOREACH p = SELF.worker.profile %] + [% SET ri = p.row_ident %] + + [%- END %][%# FOREACH SELF.worker.profile %] + +
[%- p.row_ident %]
+ + + + + + + [%- FOREACH row = SELF.displayable_columns.$ri %] + + + + + [%- END %][%# FOREACH SELF.displayable_columns.$ri %] +
[%- LxERP.t8('Column name') %][%- LxERP.t8('Meaning') %]
[%- HTML.escape(row.name) %][%- HTML.escape(row.description) %]
+
+ [%- ELSE %][%# IF SELF.worker.is_multiplexed %] + + + + + + + [%- FOREACH row = SELF.displayable_columns %] + + + + + [%- END %][%# FOREACH SELF.displayable_columns %] +
[%- LxERP.t8('Column name') %][%- LxERP.t8('Meaning') %]
[%- HTML.escape(row.name) %][%- HTML.escape(row.description) %]
+ [%- END %][%# SELF.worker.is_multiplexed %] [%- IF SELF.type == 'contacts' %]

- [%- LxERP.t8('At least one of the columns #1, customer, customernumber, vendor, vendornumber (depending on the target table) is required for matching the entry to an existing customer or vendor.', 'cp_cv_id') %] + [%- LxERP.t8("You can update existing contacts by providing the 'cp_id' column with their database IDs. Otherwise: ") %] + [%- LxERP.t8('At least one of the columns #1, customer, customernumber, customer_gln, vendor, vendornumber, vendor_gln (depending on the target table) is required for matching the entry to an existing customer or vendor.', 'cp_cv_id') %]

[%- ELSIF SELF.type == 'addresses' %]

- [%- LxERP.t8('At least one of the columns #1, customer, customernumber, vendor, vendornumber (depending on the target table) is required for matching the entry to an existing customer or vendor.', 'trans_id') %] + [%- LxERP.t8('At least one of the columns #1, customer, customernumber, customer_gln, vendor, vendornumber, vendor_gln (depending on the target table) is required for matching the entry to an existing customer or vendor.', 'trans_id') %]

[%- ELSIF SELF.type == 'parts' %]

- [%- LxERP.t8("If the article type is set to 'mixed' then a column called 'type' must be present.") %] - [% LxERP.t8("Type can be either 'part' or 'service'.") %] + [1]: + [% LxERP.t8('The three columns "make_X", "model_X" and "lastcost_X" with the same number "X" are used to import vendor part numbers and vendor prices.') %] + [% LxERP.t8('The column triplets can occur multiple times with different numbers "X" each time (e.g. "make_1", "model_1", "lastcost_1", "make_2", "model_2", "lastcost_2", "make_3", "model_3", "lastcost_3" etc).') %] + [% LxERP.t8('The items are imported accoring do their number "X" regardless of the column order inside the file.') %] + [% LxERP.t8('The column "make_X" can contain either a vendor\'s database ID, a vendor number or a vendor\'s name.') %] +

+

+ [2]: + [% LxERP.t8('Onhand only sets the quantity in master data, not in inventory. This is only a legacy info field and will be overwritten as soon as a inventory transfer happens.') %] +

+

+ [3]: + [% LxERP.t8("If the article type is set to 'mixed' then a column called 'part_type' or called 'pclass' must be present.") %] + [% LxERP.t8("Type can be either 'part', 'service' or 'assembly'.") %] + [%- LxERP.t8("If column 'pclass' is present the article type is then irrelevant or used as default ") %] + [% LxERP.t8("The 'pclass' column has the same abbreviation like a part export. The first letter is for the type Part,Assembly or Service, the second(and third) for Part Classification") %]

-[%- END %] +[%- ELSIF SELF.type == 'inventories' %]

- [%- L.submit_tag('action_download_sample', LxERP.t8('Download sample file')) %] + [%- LxERP.t8('One of the columns "qty" or "target_qty" must be given. If "target_qty" is given, the quantity to transfer for each transfer will be calculate, so that the quantity for this part, warehouse and bin will result in the given "target_qty" after each transfer.') %]

+[%- ELSIF SELF.type == 'orders' OR SELF.type == 'delivery_orders' OR SELF.type == 'ar_transactions' %] +

+ [1]: + [% LxERP.t8('The column "datatype" must be present and must be at the same position / column in each data set. The values must be the row names (see settings) for order and item data respectively.') %] +

+ [%- IF SELF.type == 'orders' OR SELF.type == 'ar_transactions' %] +

+ [2]: + [%- LxERP.t8('Amount and net amount are calculated by kivitendo. "verify_amount" and "verify_netamount" can be used for sanity checks.') %]
+ [%- LxERP.t8('If amounts differ more than "Maximal amount difference" (see settings), this item is marked as invalid.') %]
+

+ [%- END %] +[%- END %][%# IF SELF.type == … %] + + +
+

+ [%- L.submit_tag('action_download_sample', LxERP.t8('Download sample file')) %] +


[%- LxERP.t8('Settings') %]

+ + + +
+ +[%- UNLESS SELF.worker.is_multiplexed %] +

[% 'Mappings (csv_import)' | $T8 %]

+ + + +
+[%- END %][%# UNLESS SELF.worker.is_multiplexed %] +[%- END %][%# IF SELF.profile.get('dont_edit_profile') %]
- [%- IF SELF.import_status %] - [%- IF SELF.errors %] - [%- PROCESS 'csv_import/_errors.html' %] - [%- END %] +
+ [%- IF SELF.deferred %] + [%- PROCESS 'csv_import/_deferred_results.html' %] + [%- END %][%# IF SELF.deferred %] +
- [%- PROCESS 'csv_import/_result.html' %] - [%- PROCESS 'csv_import/_preview.html' %] - [%- END %] - -