/// <summary>
        /// GetRecipientData
        /// </summary>
        public static void GetRecipientData(GiftBatchTDSAGiftDetailRow ACurrentDetailRow,
            long APartnerKey,
            ref TCmbAutoPopulated ACmbKeyMinistries,
            TtxtAutoPopulatedButtonLabel ATxtDetailRecipientKey,
            ref TtxtAutoPopulatedButtonLabel AtxtDetailRecipientLedgerNumber,
            bool AMotivationDetailChangedFlag)
        {
            if (APartnerKey == 0)
            {
                APartnerKey = Convert.ToInt64(ATxtDetailRecipientKey.Text);
            }

            // If this method has been called as a result of a change in motivation detail then txtDetailRecipientKey has not yet been set...
            // but we do know that the recipient must be a Unit.

            // if Family Recipient
            if (!AMotivationDetailChangedFlag && (ATxtDetailRecipientKey.CurrentPartnerClass == TPartnerClass.FAMILY))
            {
                AtxtDetailRecipientLedgerNumber.Text = ACurrentDetailRow.RecipientLedgerNumber.ToString();
                ACmbKeyMinistries.Clear();
                ACmbKeyMinistries.Enabled = false;
            }
            // if Unit Recipient
            else
            {
                TFinanceControls.GetRecipientData(ref ACmbKeyMinistries, ref AtxtDetailRecipientLedgerNumber, APartnerKey, true);

                // enable / disable combo box depending on whether it contains any key ministries
                if ((ACmbKeyMinistries.Table == null) || (ACmbKeyMinistries.Table.Rows.Count == 0))
                {
                    ACmbKeyMinistries.Enabled = false;
                }
                else
                {
                    ACmbKeyMinistries.Enabled = true;
                }
            }
        }
        /// <summary>
        /// PopulateKeyMinistry
        /// </summary>
        private static void PopulateKeyMinistry(GiftBatchTDSAGiftDetailRow ACurrentDetailRow,
            TCmbAutoPopulated ACmbKeyMinistries,
            TtxtAutoPopulatedButtonLabel ATxtDetailRecipientKey,
            TtxtAutoPopulatedButtonLabel AtxtDetailRecipientLedgerNumber,
            bool AMotivationDetailChangedFlag,
            long APartnerKey = 0)
        {
            ACmbKeyMinistries.Clear();

            if (APartnerKey == 0)
            {
                APartnerKey = Convert.ToInt64(ATxtDetailRecipientKey.Text);

                if (APartnerKey == 0)
                {
                    return;
                }
            }

            GetRecipientData(ACurrentDetailRow,
                APartnerKey,
                ref ACmbKeyMinistries,
                ATxtDetailRecipientKey,
                ref AtxtDetailRecipientLedgerNumber,
                AMotivationDetailChangedFlag);
        }