These are accessed through the TRANSACTIONCODE fields in the BBDISTRIBUTIONS object. For example,

<Start Code Snippet>
 With .Distribution.Add
          .Fields(BBDISTRIBUTIONS_fld_DEBITACCTNUM) = "01-1000-00"
          .Fields(BBDISTRIBUTIONS_fld_CREDITACCTNUM) = "01-2000-00"
          .Fields(BBDISTRIBUTIONS_fld_AMOUNT) = "1"
          ''Test for Grants, Spendable/Non-Spendable, Performance, RE
          With .TransactionDistributions.Add
           .Fields(BBTRANSACTIONDISTRIBUTIONS_fld_TRANSACTIONCODE2) = "234"  ''Spendable/Non-Spendable
           .Fields(BBTRANSACTIONDISTRIBUTIONS_fld_TRANSACTIONCODE3) = "1898" ''Performance
           .Fields(BBTRANSACTIONDISTRIBUTIONS_fld_TRANSACTIONCODE4) = "1899" ''The Raiser's Edge
          End With
       End With

<End Code Snippet>

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.