x++ query select from markuptransHistory table
MarkupTransHistory _markupTransHistory;
Query query;
QueryRun queryRun;
QueryBuildDataSource queryBuildDataSource;
QueryBuildRange queryBuildRangeTableId,queryBuildRangeRecId;
select _purchLine
where _purchLine.LineNumber == _vendPurchLineAllVersions.LineNumber &&
_purchLine.PurchId == _vendPurchLineAllVersions.PurchId;
query = new Query();
query.validTimeStateAsOfDateTime(_vendPurchLineAllVersions.VersionDateTime);
queryBuildDataSource = query.addDataSource(tableNum(markupTransHistory));
query.validTimeStateAsOfDateTime(_vendPurchLineAllVersions.VersionDateTime);
queryBuildRangeTableId = queryBuildDataSource.addRange(fieldNum(markupTransHistory,TransTableId));
queryBuildRangeTableId.value(queryValue(_purchLine.TableId));
queryBuildRangeRecId = queryBuildDataSource.addRange(fieldNum(markupTransHistory,TransRecId));
queryBuildRangeRecId.value(queryValue(_purchLine.RecId));
queryRun = new QueryRun(query);
//while select _markupTransHistory
// order by _markupTransHistory.validto asc
//where _markupTransHistory.TransRecId == _purchLine.RecId
// && _markupTransHistory.validto < _vendPurchLineAllVersions.VersionDateTime
// && _markupTransHistory.TransTableId == _purchLine.TableId
while(queryRun.next())
{
_markupTransHistory = queryRun.get(tableNum(markupTransHistory));
if(_markupTransHistory)
{
this.calcChargesfromHistory(_markupTransHistory, _purchLine.PurchId);
_totalCharges += _markupTransHistory.Value;
}
}
}
else
{
markupTrans markupTrans;
while select markupTrans
where markupTrans.TransRecId == _purchLine.RecId
&& markupTrans.TransTableId == TableId
{
if(markupTrans)
{
this.calcCharges(markupTrans, _purchLine.PurchId);
_totalCharges += markupTrans.Value;
}
}
}
Comments
Post a Comment