PHP код:
while select factureJour
join RecId from factureTrans
join RecId from markupTrans
join RecId from custVendInvoiceTrans
where factureJour.Module == module &&
factureJour.CustVendInvoiceAccount == this.InvoiceAccount &&
factureTrans.FactureId == factureJour.FactureId &&
factureTrans.Module == module &&
factureTrans.FactureLineType == FactureLineType_RU::Markup &&
markupTrans.RecId == factureTrans.MarkupRefRecId &&
markupTrans.TransTableId == custVendInvoiceTrans.TableId &&
custVendInvoiceTrans.RecId == markupTrans.TransRecId &&
custVendInvoiceTrans.SalesPurchId == this.Num &&
custVendInvoiceTrans.InvoiceNum == this.InvoiceId &&
(module == FactureModule_RU::Cust ||
(module == FactureModule_RU::Vend &&
custVendInvoiceTrans.PurchInternalInvoiceId == this.PurchInternalInvoiceId)) &&
custVendInvoiceTrans.InvoiceDate == this.InvoiceDate &&
custVendInvoiceTrans.NumberSequenceGroupId
== this.NumberSequenceGroupId
{
if ( ! ret.find(factureJour))
{
ret.ins(factureJour);
}
}
Встретил такой код в
\Data Dictionary\Maps\CustVendInvoiceJour\Methods\factureJourSortedList_RU
Из таблиц
factureTrans
markupTrans
custVendInvoiceTrans
выбирается поле recId но нигде не используется.
Можно было бы просто написать
join TableId from factureTrans
join TableId from markupTrans
join TableId from custVendInvoiceTrans
Запрос должен получиться легче.
У кого какие мысли ?