public static PPartnerTable SharedBankAccountPartners(int ABankingDetailsKey, long APartnerKey) { PPartnerTable PartnerTable = new PPartnerTable(); TDBTransaction Transaction = null; DBAccess.GDBAccessObj.BeginAutoReadTransaction(IsolationLevel.ReadCommitted, ref Transaction, delegate { PPartnerBankingDetailsTable PartnerBankingDetailsTable = PPartnerBankingDetailsAccess.LoadViaPBankingDetails(ABankingDetailsKey, Transaction); foreach (PPartnerBankingDetailsRow Row in PartnerBankingDetailsTable.Rows) { // if record exists with a different partner key then the Bank Account is shared if (Row.PartnerKey != APartnerKey) { PPartnerRow PartnerRow = (PPartnerRow)PPartnerAccess.LoadByPrimaryKey(Row.PartnerKey, Transaction).Rows[0]; PPartnerRow NewRow = PartnerTable.NewRowTyped(false); NewRow.PartnerKey = Row.PartnerKey; NewRow.PartnerShortName = PartnerRow.PartnerShortName; PartnerTable.Rows.Add(NewRow); } } }); return(PartnerTable); }
public static PPartnerTable SharedBankAccountPartners(int ABankingDetailsKey, long APartnerKey) { TDBTransaction ReadTransaction; Boolean NewTransaction; PPartnerTable PartnerTable = new PPartnerTable(); ReadTransaction = DBAccess.GDBAccessObj.GetNewOrExistingTransaction(IsolationLevel.ReadCommitted, TEnforceIsolationLevel.eilMinimum, out NewTransaction); try { PPartnerBankingDetailsTable PartnerBankingDetailsTable = PPartnerBankingDetailsAccess.LoadViaPBankingDetails(ABankingDetailsKey, ReadTransaction); foreach (PPartnerBankingDetailsRow Row in PartnerBankingDetailsTable.Rows) { // if record exists with a different partner key then the Bank Account is shared if (Row.PartnerKey != APartnerKey) { PPartnerRow PartnerRow = (PPartnerRow)PPartnerAccess.LoadByPrimaryKey(Row.PartnerKey, ReadTransaction).Rows[0]; PPartnerRow NewRow = PartnerTable.NewRowTyped(false); NewRow.PartnerKey = Row.PartnerKey; NewRow.PartnerShortName = PartnerRow.PartnerShortName; PartnerTable.Rows.Add(NewRow); } } } finally { if (NewTransaction) { DBAccess.GDBAccessObj.CommitTransaction(); TLogging.LogAtLevel(7, "TPartnerDataReaderWebConnector.IsBankingDetailsRowShared: committed own transaction."); } } return(PartnerTable); }