Revision 1cc99eaa
Von Niklas Schmidt vor 3 Monaten hinzugefügt
SL/DB/MetaSetup/Default.pm | ||
---|---|---|
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 },
|
||
fuzzy_skonto => { type => 'boolean', default => 'true' },
|
SL/InstanceConfiguration.pm | ||
---|---|---|
|
||
Returns the configuration for "vertreter"
|
||
|
||
=item C<get_feature_experimental_assortment>
|
||
|
||
Returns the configuration for experimental feature "assortment"
|
||
|
||
=item C<get_feature_experimental_order>
|
||
|
||
Returns the configuration for the experimental feature "order"
|
locale/de/all | ||
---|---|---|
'Employees with read access to the project\'s invoices' => 'Angestellte mit Leserechten auf die Projektrechnungen',
|
||
'Empty selection for warehouse will not be added, even if the old bin is still visible (use back and forth to edit again).' => 'Leere Lager-Auswahl wird ignoriert, selbst wenn noch ein Lagerplatz ausgewählt ist. Alle Daten können durch zurück und vorwärts korrigiert werden.',
|
||
'Empty transaction!' => 'Buchung ist leer!',
|
||
'Enable Assortment as new article type' => 'Sortiment als neuen Artikeltyp aktivieren',
|
||
'Enabled Quick Searched' => 'Aktivierte Schnellsuchen',
|
||
'Enabled modules' => 'Aktivierte Module',
|
||
'End' => 'Ende',
|
locale/en/all | ||
---|---|---|
'Employees with read access to the project\'s invoices' => '',
|
||
'Empty selection for warehouse will not be added, even if the old bin is still visible (use back and forth to edit again).' => '',
|
||
'Empty transaction!' => '',
|
||
'Enable Assortment as new article type' => '',
|
||
'Enabled Quick Searched' => '',
|
||
'Enabled modules' => '',
|
||
'End' => '',
|
menus/user/00-erp.yaml | ||
---|---|---|
name: Add Assortment
|
||
icon: assortment_add
|
||
order: 550
|
||
access: part_service_assembly_edit & client/feature_experimental_assortment
|
||
access: part_service_assembly_edit
|
||
params:
|
||
action: Part/add_assortment
|
||
- parent: master_data
|
sql/Pg-upgrade2/defaults_drop_feature_experimental_assortment.sql | ||
---|---|---|
-- @tag: defaults_drop_feature_experimental_assortment
|
||
-- @description: vormals experimentelles Feature Assortment ist jetzt der Standard
|
||
-- @depends: release_3_9_1
|
||
|
||
ALTER TABLE defaults DROP COLUMN feature_experimental_assortment;
|
templates/design40_webpages/client_config/_features.html | ||
---|---|---|
<td>[% L.yes_no_tag('defaults.feature_experimental_order', SELF.defaults.feature_experimental_order) %]</td>
|
||
<td class="long-desc">[% LxERP.t8('Replace legacy order controller with new one') %]</td>
|
||
</tr>
|
||
<tr>
|
||
<th>[% LxERP.t8('Assortment') %]</th>
|
||
<td>[% L.yes_no_tag('defaults.feature_experimental_assortment', SELF.defaults.feature_experimental_assortment) %]</td>
|
||
<td class="long-desc">[% LxERP.t8('Enable Assortment as new article type') %]</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
|
templates/design40_webpages/client_config/_ranges_of_numbers.html | ||
---|---|---|
<td>[% L.input_tag("defaults.assemblynumber", SELF.defaults.assemblynumber, size="15", class="wi-normal") %]</td>
|
||
</tr>
|
||
<tr>
|
||
[% IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
<th>[% LxERP.t8('Assortment') %]</th>
|
||
<td>[% L.input_tag("defaults.assortmentnumber", SELF.defaults.assortmentnumber, size="15", class="wi-normal") %]</td>
|
||
[% END %]
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
templates/design40_webpages/delivery_order/tabs/_item_input.html | ||
---|---|---|
<td class="tooltipster-html" title="[%- 'Create a new part' | $T8 -%]">
|
||
<span class="label above">[% 'Part Type' | $T8 %] </span>
|
||
[% SET type_options = [[ 'part', LxERP.t8('Part') ], [ 'assembly', LxERP.t8('Assembly') ]] %]
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[%- END %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[% L.select_tag('add_item.create_part_type', type_options) %]
|
||
[% L.button_tag('kivi.DeliveryOrder.create_part()', LxERP.t8('+')) %]
|
||
</td>
|
templates/design40_webpages/delivery_plan/_filter.html | ||
---|---|---|
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.part, value='part', label=LxERP.t8('Part')) %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.service, value='service', label=LxERP.t8('Service')) %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assembly, value='assembly', label=LxERP.t8('Assembly')) %]
|
||
[% IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assortment, value='assortment', label=LxERP.t8('Assortment')) %]
|
||
[% END %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assortment, value='assortment', label=LxERP.t8('Assortment')) %]
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
templates/design40_webpages/delivery_value_report/_filter.html | ||
---|---|---|
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.part, value='part', label=LxERP.t8('Part')) %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.service, value='service', label=LxERP.t8('Service')) %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assembly, value='assembly', label=LxERP.t8('Assembly')) %]
|
||
[% IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assortment, value='assortment', label=LxERP.t8('Assortment')) %]
|
||
[% END %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assortment, value='assortment', label=LxERP.t8('Assortment')) %]
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
templates/design40_webpages/ic/generate_report_bottom.html | ||
---|---|---|
<td>[% 'Service (typeabbreviation)' | $T8 %]</td>
|
||
<td>[%'Service' | $T8 %]</td>
|
||
</tr>
|
||
[% IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
<tr>
|
||
<td>[% 'Assortment (typeabbreviation)' | $T8 %]</td>
|
||
<td>[%'Assortment' | $T8 %]</td>
|
||
</tr>
|
||
[% END %]
|
||
<tr>
|
||
<td>[% 'Assortment (typeabbreviation)' | $T8 %]</td>
|
||
<td>[%'Assortment' | $T8 %]</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
|
templates/design40_webpages/ic/search.html | ||
---|---|---|
<label for="l_service"> [% 'Service' | $T8 %] </label><br>
|
||
<input name="l_assembly" id="l_assembly" type="checkbox" value="Y" checked>
|
||
<label for="l_assembly"> [% 'Assembly' | $T8 %] </label><br>
|
||
[% IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
<input name="l_assortment" id="l_assortment" type="checkbox" value="Y" checked>
|
||
<label for="l_assortment"> [% 'Assortment' | $T8 %] </label>
|
||
[% END %]
|
||
<input name="l_assortment" id="l_assortment" type="checkbox" value="Y" checked>
|
||
<label for="l_assortment"> [% 'Assortment' | $T8 %] </label>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
templates/design40_webpages/order/tabs/_item_input.html | ||
---|---|---|
<td class="tooltipster-html" title="[%- 'Create a new part' | $T8 -%]">
|
||
<span class="label above">[% 'Part Type' | $T8 %] </span>
|
||
[% SET type_options = [[ 'part', LxERP.t8('Part') ], [ 'assembly', LxERP.t8('Assembly') ], [ 'service', LxERP.t8('Service') ]] %]
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[%- END %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[% L.select_tag('add_item.create_part_type', type_options) %]
|
||
[% L.button_tag('kivi.Order.create_part()', LxERP.t8('+')) %]
|
||
</td>
|
templates/design40_webpages/reclamation/tabs/basic_data/_item_input.html | ||
---|---|---|
<td class="tooltipster-html" title="[%- 'Create a new part' | $T8 -%]">
|
||
<span class="label above">[% 'Part Type' | $T8 %] </span>
|
||
[% SET type_options = [[ 'part', LxERP.t8('Part') ], [ 'assembly', LxERP.t8('Assembly') ], [ 'service', LxERP.t8('Service') ] ] %]
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[%- END %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[% L.select_tag('add_item.create_part_type', type_options) %]
|
||
[% L.button_tag('kivi.Reclamation.create_part()', LxERP.t8('+')) %]
|
||
</td>
|
templates/webpages/client_config/_features.html | ||
---|---|---|
<td align="right">[% LxERP.t8('new order controller') %]</td>
|
||
<td>[% L.yes_no_tag('defaults.feature_experimental_order', SELF.defaults.feature_experimental_order) %]</td>
|
||
</tr>
|
||
<tr>
|
||
<td align="right">[% LxERP.t8('Assortment') %]</td>
|
||
<td>[% L.yes_no_tag('defaults.feature_experimental_assortment', SELF.defaults.feature_experimental_assortment) %]</td>
|
||
</tr>
|
||
<tr><td class="listheading" colspan="4">[% 'Displayable Name Preferences' | $T8 %]</td></tr>
|
||
[% FOREACH module=SELF.displayable_name_specs_by_module.keys.sort %]
|
||
[%- SET spec=SELF.displayable_name_specs_by_module.$module -%]
|
templates/webpages/client_config/_ranges_of_numbers.html | ||
---|---|---|
<tr>
|
||
<td align="right" nowrap>[% LxERP.t8('Last Sales Delivery Order Number') %]</td>
|
||
<td>[% L.input_tag("defaults.sdonumber", SELF.defaults.sdonumber, size="15") %]</td>
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
<td align="right" nowrap>[% LxERP.t8('Last Assortment Number') %]</td>
|
||
<td>[% L.input_tag("defaults.assortmentnumber", SELF.defaults.assortmentnumber, size="15") %]</td>
|
||
[%- END -%]
|
||
</tr>
|
||
|
||
<tr>
|
templates/webpages/delivery_order/tabs/_item_input.html | ||
---|---|---|
<tr valign="top" class="listrow">
|
||
<td class="tooltipster-html" title="[%- 'Create a new part' | $T8 -%]">
|
||
[% SET type_options = [[ 'part', LxERP.t8('Part') ], [ 'assembly', LxERP.t8('Assembly') ]] %]
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[%- END %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[% L.select_tag('add_item.create_part_type', type_options) %]
|
||
[% L.button_tag('kivi.DeliveryOrder.create_part()', LxERP.t8('+')) %]
|
||
</td>
|
templates/webpages/delivery_plan/_filter.html | ||
---|---|---|
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.part, value='part', label=LxERP.t8('Part')) %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.service, value='service', label=LxERP.t8('Service')) %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assembly, value='assembly', label=LxERP.t8('Assembly')) %]
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assortment, value='assortment', label=LxERP.t8('Assortment')) %]
|
||
[% END %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assortment, value='assortment', label=LxERP.t8('Assortment')) %]
|
||
</td>
|
||
</tr>
|
||
</table>
|
templates/webpages/delivery_value_report/_filter.html | ||
---|---|---|
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.part, value='part', label=LxERP.t8('Part')) %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.service, value='service', label=LxERP.t8('Service')) %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assembly, value='assembly', label=LxERP.t8('Assembly')) %]
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assortment, value='assortment', label=LxERP.t8('Assortment')) %]
|
||
[% END %]
|
||
[% L.checkbox_tag('filter.part.part_type[]', checked=filter.part.part_type_.assortment, value='assortment', label=LxERP.t8('Assortment')) %]
|
||
</td>
|
||
</tr>
|
||
</table>
|
templates/webpages/ic/generate_report_bottom.html | ||
---|---|---|
<td>[%- 'Service (typeabbreviation)' | $T8 %]</td>
|
||
<td>[%- 'Service' | $T8 %]</td>
|
||
</tr>
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
<tr class="listrow1">
|
||
<td>[%- 'Assortment (typeabbreviation)' | $T8 %]</td>
|
||
<td>[%- 'Assortment' | $T8 %]</td>
|
||
</tr>
|
||
[%- END %]
|
||
</tbody>
|
||
</table></td>
|
||
<td><table valign="top">
|
templates/webpages/ic/search.html | ||
---|---|---|
<input name="l_assembly" id="l_assembly" class="checkbox" type="checkbox" value="Y" checked>
|
||
<label for="l_assembly">[% 'Assembly' | $T8 %]</label>
|
||
</td>
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
<td>
|
||
<input name="l_assortment" id="l_assortment" class="checkbox" type="checkbox" value="Y" checked>
|
||
<label for="l_assortment">[% 'Assortment' | $T8 %]</label>
|
||
</td>
|
||
[%- END %]
|
||
</tr></table></td>
|
||
</tr>
|
||
<tr>
|
templates/webpages/order/tabs/_item_input.html | ||
---|---|---|
<tr valign="top" class="listrow">
|
||
<td class="tooltipster-html" title="[%- 'Create a new part' | $T8 -%]">
|
||
[% SET type_options = [[ 'part', LxERP.t8('Part') ], [ 'assembly', LxERP.t8('Assembly') ], [ 'service', LxERP.t8('Service') ] ] %]
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[%- END %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[% L.select_tag('add_item.create_part_type', type_options) %]
|
||
[% L.button_tag('kivi.Order.create_part()', LxERP.t8('+')) %]
|
||
</td>
|
templates/webpages/reclamation/tabs/basic_data/_item_input.html | ||
---|---|---|
<tr valign="top" class="listrow">
|
||
<td class="tooltipster-html" title="[%- 'Create a new part' | $T8 -%]">
|
||
[% SET type_options = [[ 'part', LxERP.t8('Part') ], [ 'assembly', LxERP.t8('Assembly') ], [ 'service', LxERP.t8('Service') ] ] %]
|
||
[%- IF INSTANCE_CONF.get_feature_experimental_assortment %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[%- END %]
|
||
[%- type_options.push([ 'assortment', LxERP.t8('Assortment')]) %]
|
||
[% L.select_tag('add_item.create_part_type', type_options) %]
|
||
[% L.button_tag('kivi.Reclamation.create_part()', LxERP.t8('+')) %]
|
||
</td>
|
Auch abrufbar als: Unified diff
feature_experimental_assortment zum Standard gemacht