Источник:
http://www.fatihdemirci.net/index.ph...-lookup-yamak/
==============
Merhaba Şöyle bir istek olsun. Seçilecek vergi numarası ne müşteri nede satıcı tablosunda kullanılmış olsun. Bu gibi bir istekte notexistjoin kullanabiliriz. Eğer müşteride veya satıcıda kullanılanlar listelensin denseydi existjoin kullanacaktık.
X++:
client static void lookupETGVATNum (FormStringControl ctrl, Common common)
{
SysTableLookup sysTableLookup = SysTableLookup::newParameters(tablenum(TaxVATNumTable), ctrl);
Query query = new Query();
QueryBuildDataSource queryBuildDataSource = query.addDataSource(tablenum(TaxVATNumTable));
QueryBuildRange queryBuildRange = queryBuildDataSource.addRange(fieldnum(TaxVATNumTable, CountryRegionId));
QueryBuildDataSource qdbs;
;
// CustTable müşteri tablosunda olmayanları getiriyoruz
qdbs = queryBuildDataSource.addDataSource(tablenum(CustTable));
qdbs.addLink(fieldnum(TaxVATNumTable , vatNum ),fieldnum(CustTable , vatNum ));
qdbs.joinMode(joinmode::NoExistsJoin);
// VendTable satıcı tablosunda olmayanları getiriyoruz
qdbs = queryBuildDataSource.addDataSource(tablenum(VendTable));
qdbs.addLink(fieldnum(TaxVATNumTable , vatNum ),fieldnum(vendTable , vatNum ));
qdbs.joinMode(joinmode::NoExistsJoin);
sysTableLookup.addLookupfield(fieldnum(TaxVATNumTable, vatNum));
sysTableLookup.addLookupfield(fieldnum(TaxVATNumTable, Name));
sysTableLookup.addLookupfield(fieldnum(TaxVATNumTable, CountryRegionId));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
Источник:
http://www.fatihdemirci.net/index.ph...-lookup-yamak/