Public Sub LoopProposalsByFund()



   Dim sSQL As String

   'The Fund ID in the WHERE clause represents the System Record ID of the fund

   sSQL = "ID IN (SELECT CONSTIT_ID FROM PROSPECT INNER JOIN PROPOSAL ON PROSPECT.ID = PROPOSAL.PROSPECT_ID WHERE PROPOSAL.FUND = 6)"

   

   Dim oRecs As CRecords

   Set oRecs = New CRecords

   oRecs.Init REApplication.SessionContext, tvf_record_CustomWhereClause, sSQL


   

   Dim oRec As CRecord

   Dim oProp As CProposal

   

   For Each oRec In oRecs

       For Each oProp In oRec.Prospect.Proposals

           If oProp.Fund.Fields(Fund_fld_ID) = 6 Then

               Debug.Print oProp.Fields(PROPOSAL_fld_PROPOSAL_NAME) & " - " & oProp.Fields(PROPOSAL_fld_FUND)

           End If

       Next oProp

       oRec.CloseDown

   Next oRec

   

   oRecs.CloseDown

   Set oRecs = Nothing

   

   Set oProp = Nothing

   Set oRec = Nothing

   

End Sub

Disclaimer: We provide programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes you are familiar with Microsoft Visual Basic and the tools used to create and debug procedures. Our Customer Support can help explain the functionality of a particular procedure, but we will not modify, or assist you with modifying, these examples to provide additional functionality. If you are interested in learning more about the VBA and API modules, contact your account manager.