RegData Helper

Last Updated 9/3/2015
Pulls the registrations, registrants and questions from a specific reg form

@BRT.RegData(####) will get all of the registration data for the specified reg form.

Required parameter

  • formId - (integer) the id of the reg form

Optional parameters

  • template - the razor template to display the returned data. If not specified the data will return in an HTML table by registration.
  • pageSize - (integer) the number of records to return. The default value is 500.

Default Code

@BRT.RegData(formId:##)

EventRegData

If you decide to build your own template you can use the EventRegData class to access the data. The EventRegData class is in the RegDataHelperExtensions namespace. It returns the following:

EventRegData Class

  • Registrations - a list of Registration
  • Questions - a list of Question
  • AllPayments - a list of Payments

Registration Class

  • Id - (integer)
  • RegisterDate - (datetime)
  • Cancelled - (bool)
  • ContactName - (string)
  • ContactEmail - (string)
  • Total - (decimal)
  • Paid - (decimal)
  • Registrants - (list of Registrant)
  • RegistrationPayments - (Payments)

Registrant Class

  • Id - (integer)
  • FirstName - (string)
  • LastName - (string)
  • PreferredName - (string)
  • Address1 - (string)
  • Address2 - (string)
  • City - (string)
  • State - (string)
  • Zip - (string)
  • Phone - (string)
  • Email - (string)
  • Answers - (list of RegistrantAnswers)

Payments Class

  • Id - (integer)
  • PayPal - (integer, nullable)
  • Check - (integer, nullable)
  • Cash - (integer, nullable)
  • Adjustment - (integer, nullable)
  • NotRequired - (integer, nullable)
  • Refund - (integer, nullable)
  • Voucher - (integer, nullable)
  • PPBraintree - (integer, nullable)

RegistrantAnswer Class

  • RegistrantId - (integer, nullable)
  • QuestionId - (integer)
  • Answer - (string)
  • AnswerReporting - (string)
  • QuestionLabel - (string)

Question Class

  • Id - (integer)
  • Label - (string)
  • MultiAnswer - (boolean)
  • Choices - (list of Choice)

Choice Class

  • Id - (integer)
  • Choice - (string)
  • ReportId - (string)

Answer Class

  • RegistrantId - (integer, nullable)
  • QuestionId - (integer)
  • AnswerInt - (integer, nullable)
  • AnswerMultiLine - (string)
  • AnswerSingleLine - (string)

Templated Example

@BRT.RegData(1111, template:
   @<div>
       <h3>Custom</h3>    
        <table>
            <tr>
                <th>Date</th>
                <th>Contact</th>
                <th>Leaders</th>

                 @foreach(RegDataHelperExtensions.EventRegData.Question q in item.Questions){
                        <th class="regq">@q.Label</th>
                }

                <th class="regq">Total for Registration</th>
                <th class="regq">Paid for Registration</th>
                <th class="regq">Owed for Registration</th>
                <th>Cancelled</th>
            </tr>

            @foreach(RegDataHelperExtensions.EventRegData.Registration reg  in item.Registrations){
                    <tr>
                        <td>@reg.RegisterDate.ToCustomerDateTime().ToShortDateString()</td>

                        @foreach(RegDataHelperExtensions.EventRegData.Registrant registrant in reg.Registrants){
                            if(reg.Registrants.IndexOf(registrant) == 0){
                                <td>
                                    <div>@(reg.ContactName == ""? registrant.FirstName + " " + 
                                                registrant.LastName:reg.ContactName)</div>
                                    <div>@(reg.ContactEmail == ""? registrant.Email:reg.ContactEmail)</div>
                                </td>
                            } 
                          
                            <td>
                                <div class="emphme">@registrant.FirstName
                                   @registrant.PreferredName
                                   @registrant.LastName</div>                                
                                <div>@registrant.Address1</div>
                                <div>@registrant.Address2</div>
                                <div>@registrant.City</div>
                                <div>@registrant.State</div>
                                <div>@registrant.Zip</div>
                                <div>@registrant.Phone</div>
                                <div>@registrant.Email</div>                               
                            </td>
                        }
                        
                        @foreach(RegDataHelperExtensions.EventRegData.Registrant registrant in reg.Registrants){
                            if(reg.Registrants.IndexOf(registrant) == 0){
                              foreach(RegDataHelperExtensions.EventRegData.RegistrantAnswer a in registrant.Answers){
                                    <td class="regq">@a.Answer</td>
                                }
                                break;
                            }                            
                        }

                        <td class="regq">@reg.Total.ToString("f2")</td>
                        <td class="regq">@reg.Paid.ToString("f2")</td>
                        <td class="regq">@((reg.Total - reg.Paid).ToString("f2"))</td>
                        <td>@(reg.Cancelled? "Yes":"")</td>  
                    </tr>
                }

            </table>
        </div>)

Article Topics

For Developers Reg System

Want to learn more?

Call 800-924-5220 or

Free trial