Skip to content
Code-Schnipsel Gruppen Projekte
Commit f6d64112 erstellt von Patrick Müller's avatar Patrick Müller
Dateien durchsuchen

Merge branch 'dev'

Übergeordnete fa06454a cb362bb0
No related branches found
No related tags found
Keine zugehörigen Merge Requests gefunden
{{#showSelectCheckbox}}
<div class="quiqqer-erp-backend-erpArticle-selectbox cell">
<input type="checkbox"/>
</div>
{{/showSelectCheckbox}}
<div class="quiqqer-erp-backend-erpArticle-pos cell"></div>
<div class="quiqqer-erp-backend-erpArticle-articleNo cell cell-editable"></div>
<div class="quiqqer-erp-backend-erpArticle-text cell"></div>
......
......@@ -82,7 +82,26 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
vat : '',
'class' : 'QUI\\ERP\\Accounting\\Article',
params : false, // mixed value for API Articles
currency : false
currency : false,
showSelectCheckbox: false, // select this article via checkbox instead of click
// Determine article fields that can be edited
editFields: {
articleNo : true,
titleAndDescription: true,
quantity : true,
quantityUnit : true,
unitPrice : true,
vat : true,
discount : true
},
User: false, // special user object (see this.addUser)
deletable : true, // show "delete" button
replaceable: true, // show "replace" button
calcByList : true // calculate article prices by the associated ArticleList
},
initialize: function (options) {
......@@ -93,12 +112,13 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
this.$calculations = {};
this.$bruttoCalc = {};
this.$Position = null;
this.$Quantity = null;
this.$UnitPrice = null;
this.$Price = null;
this.$VAT = null;
this.$Total = null;
this.$SelectCheckbox = null;
this.$Position = null;
this.$Quantity = null;
this.$UnitPrice = null;
this.$Price = null;
this.$VAT = null;
this.$Total = null;
this.$Text = null;
this.$Title = null;
......@@ -106,6 +126,8 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
this.$Editor = null;
this.$textIsHtml = false;
this.$isSelected = false;
this.$Loader = null;
this.$created = false;
......@@ -126,20 +148,40 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
* @returns {HTMLDivElement}
*/
create: function () {
var self = this;
this.$Elm = this.parent();
this.$Elm.addClass('quiqqer-erp-backend-erpArticle');
var showSelectCheckbox = this.getAttribute('showSelectCheckbox');
this.$Elm.set({
html : Mustache.render(template),
html : Mustache.render(template, {
showSelectCheckbox: showSelectCheckbox
}),
'tabindex': -1,
styles : {
outline: 'none'
},
events : {
click: this.select
}
});
var EditFields = this.getAttribute('editFields');
if (showSelectCheckbox) {
this.$SelectCheckbox = this.$Elm.getElement('.quiqqer-erp-backend-erpArticle-selectbox > input');
this.$SelectCheckbox.addEvent('change', function (event) {
if (event.target.checked) {
self.select();
} else {
self.unselect();
}
});
} else {
this.$Elm.set('events', {
click: this.select
});
}
this.$Position = this.$Elm.getElement('.quiqqer-erp-backend-erpArticle-pos');
this.$ArticleNo = this.$Elm.getElement('.quiqqer-erp-backend-erpArticle-articleNo');
this.$Text = this.$Elm.getElement('.quiqqer-erp-backend-erpArticle-text');
......@@ -152,37 +194,107 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
this.$Total = this.$Elm.getElement('.quiqqer-erp-backend-erpArticle-total');
this.$Buttons = this.$Elm.getElement('.quiqqer-erp-backend-erpArticle-buttons');
this.$ArticleNo.addEvent('click', this.$onEditArticleNo);
this.$Quantity.addEvent('click', this.$onEditQuantity);
this.$UnitPrice.addEvent('click', this.$onEditUnitPriceQuantity);
this.$VAT.addEvent('click', this.$onEditVat);
this.$Discount.addEvent('click', this.$onEditDiscount);
this.$QuantityUnit.addEvent('click', this.$onEditQuantityUnit);
if ('articleNo' in EditFields && EditFields.articleNo) {
this.$ArticleNo.addEvent('click', this.$onEditArticleNo);
} else {
this.$ArticleNo.removeClass('cell-editable');
}
if ('quantity' in EditFields && EditFields.quantity) {
this.$Quantity.addEvent('click', this.$onEditQuantity);
} else {
this.$Quantity.removeClass('cell-editable');
}
if ('unitPrice' in EditFields && EditFields.unitPrice) {
this.$UnitPrice.addEvent('click', this.$onEditUnitPriceQuantity);
} else {
this.$UnitPrice.removeClass('cell-editable');
}
if ('vat' in EditFields && EditFields.vat) {
this.$VAT.addEvent('click', this.$onEditVat);
// Special VAT cell events
this.$VAT.addEvent('keydown', function (event) {
if (event.key === 'tab') {
this.$editNext(event);
return;
}
if (event.key === 'enter') {
QUIElements.simulateEvent(event.target, 'click');
}
}.bind(this));
this.$VAT.addEvent('blur', function (event) {
if (event.key === 'tab') {
this.$editNext(event);
}
}.bind(this));
} else {
this.$VAT.removeClass('cell-editable');
}
if ('discount' in EditFields && EditFields.discount) {
this.$Discount.addEvent('click', this.$onEditDiscount);
} else {
this.$Discount.removeClass('cell-editable');
}
if ('quantityUnit' in EditFields && EditFields.quantityUnit) {
this.$QuantityUnit.addEvent('click', this.$onEditQuantityUnit);
// Special quantity unit cell events
this.$QuantityUnit.addEvent('keydown', function (event) {
if (event.key === 'tab') {
this.$editNext(event);
return;
}
if (event.key === 'enter') {
QUIElements.simulateEvent(event.target, 'click');
}
}.bind(this));
this.$QuantityUnit.addEvent('blur', function (event) {
if (event.key === 'tab') {
this.$editNext(event);
}
}.bind(this));
} else {
this.$QuantityUnit.removeClass('cell-editable');
}
// brutto stuff
this.$UnitPriceBrutto = new Element('div', {
'class': 'quiqqer-erp-backend-erpArticle-unitPrice-brutto cell cell-editable',
events : {
click: this.$onEditBruttoPrice
}
}).inject(this.$UnitPrice, 'after');
this.$PriceBrutto = new Element('div', {
'class': 'quiqqer-erp-backend-erpArticle-price-brutto cell'
}).inject(this.$Price, 'after');
if ('unitPrice' in EditFields && EditFields.unitPrice) {
this.$UnitPriceBrutto.addEvent('click', this.$onEditBruttoPrice);
} else {
this.$UnitPriceBrutto.removeClass('cell-editable');
}
this.$DiscountBrutto = new Element('div', {
'class': 'quiqqer-erp-backend-erpArticle-discount-brutto cell cell-editable',
events : {
click: this.$onEditBruttoDiscount
}
}).inject(this.$Discount, 'after');
if ('discount' in EditFields && EditFields.discount) {
this.$DiscountBrutto.addEvent('click', this.$onEditBruttoDiscount);
} else {
this.$DiscountBrutto.removeClass('cell-editable');
}
this.$TotalBrutto = new Element('div', {
'class': 'quiqqer-erp-backend-erpArticle-total-brutto cell'
}).inject(this.$Total, 'after');
this.$Loader = new Element('div', {
html : '<span class="fa fa-spinner fa-spin"></span>',
styles: {
......@@ -202,65 +314,32 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
this.setPosition(this.getAttribute('position'));
}
this.$Title = new Element('div', {
'class': 'quiqqer-erp-backend-erpArticle-text-title cell-editable'
}).inject(this.$Text);
this.$Title.addEvent('click', this.$onEditTitle);
new QUIButton({
'class': 'quiqqer-erp-backend-erpArticle-text-btn-editor',
title : QUILocale.get(lg, 'erp.articleList.article.button.editor'),
icon : 'fa fa-edit',
events : {
onClick: this.$onEditDescription
}
}).inject(this.$Text);
this.$Description = new Element('div', {
'class': 'quiqqer-erp-backend-erpArticle-text-description cell-editable quiqqer-erp-backend-erpArticle__cell_hidden'
}).inject(this.$Text);
this.$Description.addEvent('click', this.$onEditDescription);
this.$Elm.getElements('.cell-editable').set('tabindex', -1);
// Special VAT cell events
this.$VAT.addEvent('keydown', function (event) {
if (event.key === 'tab') {
this.$editNext(event);
return;
}
if (event.key === 'enter') {
QUIElements.simulateEvent(event.target, 'click');
}
}.bind(this));
this.$VAT.addEvent('blur', function (event) {
if (event.key === 'tab') {
this.$editNext(event);
}
}.bind(this));
if ('titleAndDescription' in EditFields && EditFields.titleAndDescription) {
this.$Title.addEvent('click', this.$onEditTitle);
this.$Description.addEvent('click', this.$onEditDescription);
// Special quantity unit cell events
this.$QuantityUnit.addEvent('keydown', function (event) {
if (event.key === 'tab') {
this.$editNext(event);
return;
}
if (event.key === 'enter') {
QUIElements.simulateEvent(event.target, 'click');
}
}.bind(this));
new QUIButton({
'class': 'quiqqer-erp-backend-erpArticle-text-btn-editor',
title : QUILocale.get(lg, 'erp.articleList.article.button.editor'),
icon : 'fa fa-edit',
events : {
onClick: this.$onEditDescription
}
}).inject(this.$Text);
} else {
this.$Title.removeClass('cell-editable');
this.$Description.removeClass('cell-editable');
}
this.$QuantityUnit.addEvent('blur', function (event) {
if (event.key === 'tab') {
this.$editNext(event);
}
}.bind(this));
this.$Elm.getElements('.cell-editable').set('tabindex', -1);
this.setArticleNo(this.getAttribute('articleNo'));
this.setVat(this.getAttribute('vat'));
......@@ -279,29 +358,39 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
}
// edit buttons
new QUIButton({
title : QUILocale.get(lg, 'erp.articleList.article.button.replace'),
icon : 'fa fa-retweet',
styles: {
'float': 'none'
},
events: {
onClick: this.$onReplaceClick
}
}).inject(this.$Buttons);
if (this.getAttribute('replaceable')) {
new QUIButton({
title : QUILocale.get(lg, 'erp.articleList.article.button.replace'),
icon : 'fa fa-retweet',
styles: {
'float': 'none'
},
events: {
onClick: this.$onReplaceClick
}
}).inject(this.$Buttons);
}
new QUIButton({
title : QUILocale.get(lg, 'erp.articleList.article.button.delete'),
icon : 'fa fa-trash',
styles: {
'float': 'none'
},
events: {
onClick: this.openDeleteDialog
}
}).inject(this.$Buttons);
if (this.getAttribute('deletable')) {
new QUIButton({
title : QUILocale.get(lg, 'erp.articleList.article.button.delete'),
icon : 'fa fa-trash',
styles: {
'float': 'none'
},
events: {
onClick: this.openDeleteDialog
}
}).inject(this.$Buttons);
}
this.$created = true;
// User
if (this.getAttribute('User')) {
this.$user = this.getAttribute('User');
}
this.calc();
this.addEvent('onEditKeyDown', function (me, event) {
......@@ -434,18 +523,20 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
$calc: function () {
var Calc;
var self = this,
attr = self.getAttributes(),
pos = parseInt(attr.position);
var self = this,
attr = self.getAttributes(),
pos = parseInt(attr.position),
calcByList = false;
if (this.getAttribute('List')) {
Calc = this.getAttribute('List').$executeCalculation();
if (this.getAttribute('calcByList') && this.getAttribute('List')) {
Calc = this.getAttribute('List').$executeCalculation();
calcByList = true;
} else {
Calc = new Promise(function (resolve, reject) {
QUIAjax.get('package_quiqqer_erp_ajax_products_calc', resolve, {
'package': 'quiqqer/erp',
onError : reject,
params : JSON.encode({
articles : JSON.encode({
articles: [attr]
}),
user : JSON.encode(self.$user)
......@@ -454,14 +545,22 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
}
return Calc.then(function (result) {
var article;
var brutto;
var articles = result.articles;
var article = articles.filter(function (article) {
return parseInt(article.position) === pos;
})[0];
var brutto = result.brutto.articles.filter(function (article) {
return parseInt(article.position) === pos;
})[0];
if (!calcByList) {
article = articles[0];
brutto = result.brutto.articles[0];
} else {
article = articles.filter(function (article) {
return parseInt(article.position) === pos;
})[0];
brutto = result.brutto.articles.filter(function (article) {
return parseInt(article.position) === pos;
})[0];
}
self.$calculations = article;
self.$bruttoCalc = brutto;
......@@ -763,6 +862,13 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
}
this.$Elm.addClass('quiqqer-erp-backend-erpArticle-select');
if (this.$SelectCheckbox) {
this.$SelectCheckbox.checked = true;
}
this.$isSelected = true;
this.fireEvent('select', [this]);
},
......@@ -775,9 +881,23 @@ define('package/quiqqer/erp/bin/backend/controls/articles/Article', [
}
this.$Elm.removeClass('quiqqer-erp-backend-erpArticle-select');
if (this.$SelectCheckbox) {
this.$SelectCheckbox.checked = false;
}
this.$isSelected = false;
this.fireEvent('unSelect', [this]);
},
/**
* @return {boolean}
*/
isSelected: function () {
return this.$isSelected;
},
/**
* Dialogs
*/
......
......@@ -44,7 +44,8 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleList', [
'$calc',
'$onInject',
'$executeCalculation',
'$refreshNettoBruttoDisplay'
'$refreshNettoBruttoDisplay',
'$getArticleDataForCalculation'
],
options: {
......@@ -157,7 +158,7 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleList', [
* @returns {Object}
*/
serialize: function () {
var articles = this.$articles.map(function (Article) {
var articles = this.$getArticles().map(function (Article) {
var attr = Article.getAttributes();
attr.control = typeOf(Article);
......@@ -170,6 +171,15 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleList', [
};
},
/**
* Get internal article list
*
* @return {[]}
*/
$getArticles: function () {
return this.$articles;
},
/**
* Unserialize the list
*
......@@ -395,9 +405,7 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleList', [
this.$calculationRunning = true;
return new Promise(function (resolve, reject) {
var articles = self.$articles.map(function (Article) {
return Article.getAttributes();
});
var articles = self.$getArticleDataForCalculation();
QUIAjax.get('package_quiqqer_erp_ajax_products_calc', function (result) {
self.$calculations = result;
......@@ -423,6 +431,17 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleList', [
});
},
/**
* Get article data used for calculation
*
* @return {Array}
*/
$getArticleDataForCalculation: function () {
return this.$articles.map(function (Article) {
return Article.getAttributes();
});
},
/**
* Return the current calculations
*
......@@ -598,8 +617,8 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleList', [
*/
$onArticleSetPosition: function (Article) {
Article.getElm()
.getElement('.quiqqer-erp-backend-erpArticlePlaceholder-pos')
.set('html', Article.getAttribute('position'));
.getElement('.quiqqer-erp-backend-erpArticlePlaceholder-pos')
.set('html', Article.getAttribute('position'));
},
/**
......
{{#showPosSummary}}
<div class="quiqqer-erp-backend-temporaryErp-summary-pos">
<div class="quiqqer-erp-backend-temporaryErp-summary-pos-title">{{labelPosInfo}}:</div>
......@@ -10,7 +11,7 @@
<span class="brutto-value"></span>
</div>
</div>
{{/showPosSummary}}
<div class="quiqqer-erp-backend-temporaryErp-summary-total">
<div class="quiqqer-erp-backend-temporaryErp-summary-total-title">{{labelSums}}:</div>
......
......@@ -28,7 +28,9 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleSummary', [
options: {
List : null,
styles : false,
currency: 'EUR'
currency: 'EUR',
showPosSummary: true // show summary for selected article
},
Binds: [
......@@ -54,14 +56,17 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleSummary', [
* @returns {HTMLDivElement}
*/
create: function () {
var showPosSummary = this.getAttribute('showPosSummary');
this.$Elm = new Element('div', {
'class': 'quiqqer-erp-backend-temporaryErp-summary',
html : Mustache.render(template, {
labelPosInfo: QUILocale.get(lg, 'article.summary.tpl.labelPosInfo'),
labelNet : QUILocale.get(lg, 'article.summary.tpl.labelNet'),
labelGross : QUILocale.get(lg, 'article.summary.tpl.labelGross'),
labelSums : QUILocale.get(lg, 'article.summary.tpl.labelSums'),
labelVat : QUILocale.get(lg, 'article.summary.tpl.labelVat'),
showPosSummary: showPosSummary,
labelPosInfo : QUILocale.get(lg, 'article.summary.tpl.labelPosInfo'),
labelNet : QUILocale.get(lg, 'article.summary.tpl.labelNet'),
labelGross : QUILocale.get(lg, 'article.summary.tpl.labelGross'),
labelSums : QUILocale.get(lg, 'article.summary.tpl.labelSums'),
labelVat : QUILocale.get(lg, 'article.summary.tpl.labelVat'),
})
});
......@@ -79,13 +84,15 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleSummary', [
'.quiqqer-erp-backend-temporaryErp-summary-total-vat .vat-value'
);
this.$ArticleNettoSum = this.$Elm.getElement(
'.quiqqer-erp-backend-temporaryErp-summary-pos .netto-value'
);
if (showPosSummary) {
this.$ArticleNettoSum = this.$Elm.getElement(
'.quiqqer-erp-backend-temporaryErp-summary-pos .netto-value'
);
this.$ArticleBruttoSum = this.$Elm.getElement(
'.quiqqer-erp-backend-temporaryErp-summary-pos .brutto-value'
);
this.$ArticleBruttoSum = this.$Elm.getElement(
'.quiqqer-erp-backend-temporaryErp-summary-pos .brutto-value'
);
}
if (this.getAttribute('styles')) {
this.setStyles(this.getAttribute('styles'));
......@@ -205,23 +212,25 @@ define('package/quiqqer/erp/bin/backend/controls/articles/ArticleSummary', [
var calc = calculated.calculations;
if (!(ArticleInstance instanceof Article)) {
ArticleInstance = List.getSelectedArticle();
}
if (this.getAttribute('showPosSummary')) {
if (!(ArticleInstance instanceof Article)) {
ArticleInstance = List.getSelectedArticle();
}
if (ArticleInstance instanceof Article) {
var articleCalc = ArticleInstance.getCalculations();
if (ArticleInstance instanceof Article) {
var articleCalc = ArticleInstance.getCalculations();
if (articleCalc && typeof articleCalc.nettoSum !== 'undefined') {
this.$ArticleNettoSum.set('html', this.$Formatter.format(articleCalc.nettoSum));
} else {
this.$ArticleNettoSum.set('html', '---');
}
if (articleCalc && typeof articleCalc.nettoSum !== 'undefined') {
this.$ArticleNettoSum.set('html', this.$Formatter.format(articleCalc.nettoSum));
} else {
this.$ArticleNettoSum.set('html', '---');
}
if (articleCalc && typeof articleCalc.sum !== 'undefined') {
this.$ArticleBruttoSum.set('html', this.$Formatter.format(articleCalc.sum));
} else {
this.$ArticleBruttoSum.set('html', '---');
if (articleCalc && typeof articleCalc.sum !== 'undefined') {
this.$ArticleBruttoSum.set('html', this.$Formatter.format(articleCalc.sum));
} else {
this.$ArticleBruttoSum.set('html', '---');
}
}
}
......
.quiqqer-erp-backend-erpItems-selectlist .quiqqer-erp-backend-erpItems-header {
padding-left: 40px;
}
/*.quiqqer-erp-backend-erpItems-selectlist .quiqqer-erp-backend-erpItems-header-description,*/
/*.quiqqer-erp-backend-erpItems-selectlist .quiqqer-erp-backend-erpArticle-text{*/
/* width: calc(100% - 860px) !important;*/
/*}*/
\ No newline at end of file
/**
* Lists articles that are selectable via checkbox. Only calculates selected articles.
*
* @module package/quiqqer/erp/bin/backend/controls/articles/SelectArticleList
* @author www.pcsg.de (Patrick Müller)
*
* @event onCalc [self, {Object} calculation]
* @event onArticleSelect [self, {Object} Article]
* @event onArticleUnSelect [self, {Object} Article]
* @event onArticleReplaceClick [self, {Object} Article]
*/
define('package/quiqqer/erp/bin/backend/controls/articles/SelectArticleList', [
'package/quiqqer/erp/bin/backend/controls/articles/ArticleList',
'css!package/quiqqer/erp/bin/backend/controls/articles/SelectArticleList.css'
], function (ArticleList) {
"use strict";
var lg = 'quiqqer/erp';
return new Class({
Extends: ArticleList,
Type : 'package/quiqqer/erp/bin/backend/controls/articles/SelectArticleList',
Binds: [
'$onArticleSelect',
'$onArticleUnSelect',
'$onInject',
'getSelectedArticles',
'$addArticle',
'$getArticleDataForCalculation'
],
initialize: function (options) {
this.parent(options);
this.addEvents({
onInject: this.$onInject
});
},
/**
* Event: onInject
*/
$onInject: function () {
//this.parent();
this.getElm().addClass('quiqqer-erp-backend-erpItems-selectlist');
},
/**
* Get all selected articles
*
* @return {[]}
*/
getSelectedArticles: function () {
var articles = [];
this.$articles.forEach(function (Article) {
if (Article.isSelected()) {
articles.push(Article);
}
});
return articles;
},
/**
* event : on article delete
*
* @param {Object} Article
*/
$onArticleSelect: function (Article) {
this.$selectedArticle = Article;
this.fireEvent('articleSelect', [this, Article]);
this.$calc();
},
/**
* event : on article delete
*
* @param Article
*/
$onArticleUnSelect: function (Article) {
this.$selectedArticle = null;
this.fireEvent('articleUnSelect', [this, Article]);
this.$calc();
},
/**
* Get article data used for calculation
*
* @return {Array}
*/
$getArticleDataForCalculation: function () {
var returnSelectedOnly = true;
// Only return selected articles if all articles have been calculated once
this.$articles.forEach(function (Article) {
if (!Article.getCalculations()) {
returnSelectedOnly = false;
}
});
if (!returnSelectedOnly) {
return this.parent();
}
return this.getSelectedArticles().map(function (Article) {
return Article.getAttributes();
});
},
/**
* Get internal article list
*
* @return {[]}
*/
$getArticles: function () {
return this.getSelectedArticles();
}
});
});
......@@ -378,9 +378,9 @@
<de><![CDATA[Steuernummer]]></de>
<en><![CDATA[Tax number]]></en>
</locale>
<locale name="menu.erp.company.hrb">
<de><![CDATA[HRB]]></de>
<en><![CDATA[HRB number]]></en>
<locale name="menu.erp.company.register">
<de><![CDATA[Register]]></de>
<en><![CDATA[Register]]></en>
</locale>
<locale name="menu.erp.company.court">
<de><![CDATA[Amtsgericht]]></de>
......
......@@ -11,6 +11,10 @@
<image src="URL_OPT_DIR/quiqqer/erp/bin/images/Logo.png"/>
<erp>
<type>application</type> <!-- application, module, plugin -->
</erp>
<preview>
<image src="URL_OPT_DIR/quiqqer/erp/bin/preview-1.png"/>
<image src="URL_OPT_DIR/quiqqer/erp/bin/preview-2.png"/>
......@@ -32,7 +36,7 @@
<provider>
<erp src="\QUI\ERP\Provider\Erp"/>
<requirements src="\QUI\ERP\Provider\Requirements"/>
<!-- <dashboard src="\QUI\ERP\Dashboard\DashboardProvider"/>-->
<!-- <dashboard src="\QUI\ERP\Dashboard\DashboardProvider"/>-->
</provider>
</package>
</quiqqer>
......@@ -65,7 +65,7 @@
<conf name="taxNumber">
<type>string</type>
</conf>
<conf name="hrb">
<conf name="register">
<type>string</type>
</conf>
<conf name="court">
......@@ -264,9 +264,9 @@
<locale group="quiqqer/erp" var="menu.erp.company.taxNumber"/>
</text>
</input>
<input type="text" conf="company.hrb">
<input type="text" conf="company.register">
<text>
<locale group="quiqqer/erp" var="menu.erp.company.hrb"/>
<locale group="quiqqer/erp" var="menu.erp.company.register"/>
</text>
</input>
<input type="text" conf="company.court">
......
......@@ -80,6 +80,7 @@ table.articles-article {
clear: both;
display: block;
font-size: 10px;
white-space: nowrap;
}
.articles-article-price {
......
0% oder .
You are about to add 0 people to the discussion. Proceed with caution.
Bearbeitung dieser Nachricht zuerst beenden!
Bitte registrieren oder zum Kommentieren