Вопрос для EGLA - корреспонденция в 2.5
Женя, извини за беспокойство, но ты опять оставил следы, так что обращаюсь к тебе.
В методе updateTmpBondByRecId() класса LedgerBondServer_RU находим следующий код :
// EGLA, PTR 2051
// Compress these links
// X.RecIdX - Y.0
// Y.0 - Z.RecIdZ
while select tmpBond
outer join equalTmpBond
where tmpBond.AmountCurCredit == equalTmpBond.AmountCurCredit &&
tmpBond.AmountCurDebit == equalTmpBond.AmountCurDebit &&
tmpBond.AmountMST == equalTmpBond.AmountMST &&
tmpBond.AmountMSTSecondary == equalTmpBond.AmountMSTSecondary &&
tmpBond.RecId != equalTmpBond.RecId
{
if (! tmpBond || ! equalTmpBond)
continue;
debitVRef = this.getVRef(tmpBond.DebitRef);
creditVRef = this.getVRef(tmpBond.CreditRef);
equalDebitVRef = this.getVRef(equalTmpBond.DebitRef);
equalCreditVRef = this.getVRef(equalTmpBond.CreditRef);
if (! debitVRef.getLedgerTransRecId() && creditVRef.getLedgerTransRecId() &&
equalDebitVRef.getLedgerTransRecId() && ! equalCreditVRef.getLedgerTransRecId() &&
LedgerBondVRef_RU::equals(debitVRef, equalCreditVRef))
{
tmpBond.DebitRef = equalDebitVRef.getId();
tmpBond.update();
equalTmpBond.delete();
}
if (debitVRef.getLedgerTransRecId() && ! creditVRef.getLedgerTransRecId() &&
! equalDebitVRef.getLedgerTransRecId() && equalCreditVRef.getLedgerTransRecId() &&
LedgerBondVRef_RU::equals(creditVRef, equalDebitVRef))
{
tmpBond.CreditRef = equalCreditVRef.getId();
tmpBond.update();
equalTmpBond.delete();
}
}
Вопрос - какие ссылки тут "compress" и зачем?
|