Если смотреть Анализ счета за Год, то суммы бывают достаточно приличные. И очень не приятно когда обрезаются хвосты. Все дело в том, что тип AmountMSTLong стал иметь свойство DisplayLenght() == 15, вместо 20 как было в 3-ей версии.
Если ничего не трогать то в классе RLedgerSheetEngine_AccountReview :
метод InsertRow() вместо
X++:
//BP Deviation documented
formListItem = new FormListItem(strRFix(strfmt("%1", amount), amountDictType.displayLength()));
formListItem.subItem(#Value2);
formListItem.idx(idx);
listControl.setItem(formListItem);
amount = ledgerTransCredit.exists(rowAccount) ? ledgerTransCredit.lookup(rowAccount) : 0;
//BP Deviation documented
formListItem = new FormListItem(strRFix(strfmt("%1", amount), amountDictType.displayLength()));
formListItem.subItem(#Value3);
formListItem.idx(idx);
listControl.setItem(formListItem);
надо поставить :
X++:
//BP Deviation documented
// kos 3 - 2009 обрезает копейки у миллиардов и больше
//formListItem = new FormListItem(strRFix(strfmt("%1", amount), amountDictType.displayLength()));
formListItem = new FormListItem(strfmt("%1", amount), amountDictType.displayLength());
// kos 3 - 2009 обрезает копейки у миллиардов и больше
formListItem.subItem(#Value2);
formListItem.idx(idx);
listControl.setItem(formListItem);
amount = ledgerTransCredit.exists(rowAccount) ? ledgerTransCredit.lookup(rowAccount) : 0;
//BP Deviation documented
// kos 3 - 2009 обрезает копейки у миллиардов и больше
//formListItem = new FormListItem(strRFix(strfmt("%1", amount), amountDictType.displayLength()));
formListItem = new FormListItem(strfmt("%1", amount), amountDictType.displayLength());
// kos 3 - 2009 обрезает копейки у миллиардов и больше
formListItem.subItem(#Value3);
formListItem.idx(idx);
listControl.setItem(formListItem);
в методе addTotalRow() вместо
X++:
//BP Deviation documented
formListItem = new FormListItem(strRFix(strfmt("%1", turnoverDebit), amountDictType.displayLength()));
formListItem.subItem(#Value2);
formListItem.idx(idx);
listControl.setItem(formListItem);
//BP Deviation documented
formListItem = new FormListItem(strRFix(strfmt("%1", turnoverCredit), amountDictType.displayLength()));
formListItem.subItem(#Value3);
formListItem.idx(idx);
listControl.setItem(formListItem);
formListItem = new FormListItem("@GEE7654", #Value3);
formListItem.idx(listControl.getCount() + 1);
idx = listControl.addItem(formListItem);
amount = initialBalance + turnoverDebit - turnoverCredit;
amount = amount > 0 ? amount : 0;
//BP Deviation documented
formListItem = new FormListItem(strRFix(strfmt("%1", amount), amountDictType.displayLength()));
formListItem.subItem(#Value2);
formListItem.idx(idx);
listControl.setItem(formListItem);
amount = initialBalance + turnoverDebit - turnoverCredit;
amount = amount < 0 ? - amount : 0;
//BP Deviation documented
formListItem = new FormListItem(strRFix(strfmt("%1", amount), amountDictType.displayLength()));
formListItem.subItem(#Value3);
formListItem.idx(idx);
listControl.setItem(formListItem);
надо поставить
X++:
//BP Deviation documented
// kos 3 - 2009 обрезает копейки у миллиардов и больше
//formListItem = new FormListItem(strRFix(strfmt("%1", turnoverDebit), amountDictType.displayLength()));
formListItem = new FormListItem(strfmt("%1", turnoverDebit), amountDictType.displayLength());
// kos 3 - 2009 обрезает копейки у миллиардов и больше
formListItem.subItem(#Value2);
formListItem.idx(idx);
listControl.setItem(formListItem);
//BP Deviation documented
// kos 3 - 2009 обрезает копейки у миллиардов и больше
//formListItem = new FormListItem(strRFix(strfmt("%1", turnoverCredit), amountDictType.displayLength()));
formListItem = new FormListItem(strfmt("%1", turnoverCredit), amountDictType.displayLength());
// kos 3 - 2009 обрезает копейки у миллиардов и больше
formListItem.subItem(#Value3);
formListItem.idx(idx);
listControl.setItem(formListItem);
formListItem = new FormListItem("@GEE7654", #Value3);
formListItem.idx(listControl.getCount() + 1);
idx = listControl.addItem(formListItem);
amount = initialBalance + turnoverDebit - turnoverCredit;
amount = amount > 0 ? amount : 0;
//BP Deviation documented
// kos 3 - 2009 обрезает копейки у миллиардов и больше
//formListItem = new FormListItem(strRFix(strfmt("%1", amount), amountDictType.displayLength()));
formListItem = new FormListItem(strfmt("%1", amount), amountDictType.displayLength());
// kos 3 - 2009 обрезает копейки у миллиардов и больше
formListItem.subItem(#Value2);
formListItem.idx(idx);
listControl.setItem(formListItem);
amount = initialBalance + turnoverDebit - turnoverCredit;
amount = amount < 0 ? - amount : 0;
//BP Deviation documented
// kos 3 - 2009 обрезает копейки у миллиардов и больше
//formListItem = new FormListItem(strRFix(strfmt("%1", amount), amountDictType.displayLength()));
formListItem = new FormListItem(strfmt("%1", amount), amountDictType.displayLength());
// kos 3 - 2009 обрезает копейки у миллиардов и больше
formListItem.subItem(#Value3);
formListItem.idx(idx);
listControl.setItem(formListItem);
кстати у триллионов обрезаются уже рубли и т.д.