diff --git a/org.adempiere.base/src/org/adempiere/model/PromotionRule.java b/org.adempiere.base/src/org/adempiere/model/PromotionRule.java index 0822141809..498f9b8a53 100644 --- a/org.adempiere.base/src/org/adempiere/model/PromotionRule.java +++ b/org.adempiere.base/src/org/adempiere/model/PromotionRule.java @@ -296,6 +296,7 @@ public class PromotionRule { nol.setQty(qty); if (discount.scale() > 2) discount = discount.setScale(2, BigDecimal.ROUND_HALF_UP); + nol.setPriceEntered(discount.negate()); nol.setPriceActual(discount.negate()); if (ol != null && Integer.toString(ol.getLine()).endsWith("0")) { for(int i = 0; i < 9; i++) { diff --git a/org.adempiere.base/src/org/compiere/print/layout/TableElement.java b/org.adempiere.base/src/org/compiere/print/layout/TableElement.java index e4e1f6e628..884e88bafd 100644 --- a/org.adempiere.base/src/org/compiere/print/layout/TableElement.java +++ b/org.adempiere.base/src/org/compiere/print/layout/TableElement.java @@ -434,7 +434,10 @@ public class TableElement extends PrintElement String[] lines = Pattern.compile("\n", Pattern.MULTILINE).split(string); for (int lineNo = 0; lineNo < lines.length; lineNo++) { - AttributedString aString = new AttributedString(lines[lineNo]); + String str = lines[lineNo]; + if (str.length() == 0) + str = " "; + AttributedString aString = new AttributedString(str); aString.addAttribute(TextAttribute.FONT, font); AttributedCharacterIterator iter = aString.getIterator(); LineBreakMeasurer measurer = new LineBreakMeasurer(iter, frc); diff --git a/org.adempiere.ui/src/org/compiere/apps/form/Allocation.java b/org.adempiere.ui/src/org/compiere/apps/form/Allocation.java index a924bc3179..db59e1f6db 100644 --- a/org.adempiere.ui/src/org/compiere/apps/form/Allocation.java +++ b/org.adempiere.ui/src/org/compiere/apps/form/Allocation.java @@ -27,6 +27,7 @@ import org.adempiere.exceptions.AdempiereException; import org.compiere.minigrid.IMiniTable; import org.compiere.model.MAllocationHdr; import org.compiere.model.MAllocationLine; +import org.compiere.model.MBPartner; import org.compiere.model.MDocType; import org.compiere.model.MInvoice; import org.compiere.model.MPayment; @@ -807,6 +808,9 @@ public class Allocation if (log.isLoggable(Level.CONFIG)) log.config("Payment #" + i + (pay.isAllocated() ? " not" : " is") + " fully allocated"); } + MBPartner bpartner = new MBPartner(Env.getCtx(), m_C_BPartner_ID, trxName); + bpartner.setTotalOpenBalance(); + bpartner.save(); paymentList.clear(); amountList.clear();