CRM (Data Manager)

The CRM Data Manager is a powerful information management system that enables you to manage and coordinate various sets of data with an easy to use, front-end user interface.

Our CRM works in conjunction with our Awesome Forms feature. Via Awesome Forms, the data submitted via your Forms is easily managed. You’re able to view the information in the app, and link the various sets of submitted data. In addition, the CRM enables you to easily select the methods in which you want the data linked, and you can filter the information as you see fit.

USE CASE:

A training school is a perfect example to help you understand how data can be coordinated using our CRM.

Our CRM would enable you to create a School (or multiple schools), then add Classes to the School. Next, you can add Teachers data, and link the Teachers to the Classes.

After the Class and Teacher information is linked, you would add Student data, and link the Students to the Classes. Lastly, Grades and Attendance data can be linked to the Students. Via the Query/Reports functionality, one could create and display Reports in the app that show Grades and/or Attendance levels per Class in the School. Likewise, you could easily see a Student’s Grades from their various Classes.

The above scenario is a small example of the power of our CRM. What makes it exceptional is the App Owner can easily create these relationships and link the data in an easy to use interface, without needing to hire a programmer to setup and manage their information.

CREATE YOUR FORMS

If not already, create your required Forms using our Awesome Forms featureClick here for instructions on using Awesome Forms.

GETTING STARTED

1) Log into your App Manager and select your app.

2) Click Features from the left-hand-side of the screen (or the middle of the screen).

3) Click CRM (or whatever is the name of your Data Manager).

ENTER COMPANY INFORMATION

1) Click the blue + button on the right-hand-side of the screen to add a Company.

2) Add the Company information and select if the Company should be Published (live) or Draft (disabled).

USER MANAGEMENT

1) Click User Management and select Roles. This is where you set the Permissions for the Users of the various Forms and information. Click the + button to add a new Role.

2) For each Role that you create, enter a Role Name, and assign the Role the appropriate Permissions. The Permissions apply to each Form that you created. Lastly, click the Save button.

All Records – Users of this Role can access all created Records. This includes Records that they create, and Records that other Users create. If not checked, the User will only have access to Records that they personally create.

Create – The User can create New Records.

Update– Users with this Permission can Update (edit) existing Records.

View– The User can only View Records, they cannot edit Records.

Delete – Users with Delete Permissions can delete existing Records. Once a Record is deleted it’s permanently gone (be careful with this permission setting).

Assign – Users with this Permission can assign records to other members.

After completing your Roles, you can now add your Employees.

It’s VERY IMPORTANT to note that when adding the Employee information, you must “use the same email address” for the employee that is used when they Register in the app.

1) Click User Management and select Employees. Next, click the blue + button on the right-hand-side of the screen to add a new Employee.

2) Add the required information for the Employee.

3) Next select a Role for the Employee. The Roles that you previously created will be available in the drop-down-list.

4) Lastly, select if the Employee should be Active or if their account should be In-Active (preventing them from using the features). Click the Save button to save your settings.

SETTINGS / TEMPLATE BUILDER

In Settings is where you’ll find our powerful Template Builder. This is where you select how to display the information from each Form in your app. Using the Template Builder, you select which Field or Fields are displayed on the Buttons upon the App User selecting the Form.

The methods in which you extract and display data can be simple, such as simply displaying a single record source (Form), or you can use complex methods and pull various sets of data from multiple record sources (Forms).

EXTRACTING AND DISPLAYING DATA FROM A SINGLE RECORD SOURCE (FORM)

Each set of records that are being pulled must begin with <ion-item> and end with </ion-item>.

For example, let’s say that our Form contains the field “Vehicle Name” and we want to display that data in the Report. Below is the code that we would use.  

The label in the code is the Field Name (from the Form), and the value in the code is the data as entered by the App User.

<ion-item> 
{{fields.Vehicle_Name.label}} {{fields.Vehicle_Name.value}}
</ion-item>

The result would show like this:

Vehicle Name Lexus

Realistically, may want to add a colon between the Label and Value so that will will display as:

Vehicle Name: Lexus

To do this, you would use the code below:

<ion-item> 
{{fields.Vehicle_Name.label}}: {{fields.Vehicle_Name.value}}
</ion-item> 

You can also choose not to use the Label and only use the Value such as this:

<ion-item> 
{{fields.Vehicle_Name.value}}
</ion-item>

The result would show:

Lexus

DISPLAYING MORE THAN ONE FIELD OF DATA IN THE REPORT LIST

You can display multiple Fields of data from a record source such as this:

{{fields.Vehicle_Name.value}}
{{fields.Model.value}}

The result would show:

Lexus XF59

If you want to separate the fields and have them on two different lines, use the break code like this:

{{fields.Vehicle_Name.value}}
<br />
{{fields.Model.value}}

The result will be:

Lexus 
XF59

DISPLAYING MULTIPLE FIELDS OF DATA USING A DROP-DOWN LIST AS A FILTER

If you have a Drop-Down field in your Form, you can use it to filter displayed data. Below is an example:

<ion-item ng-if="fields.Close_Request.value=='No'"> 
{{fields.Customer_Name.value}} 
</ion-item>

In the above example, the Drop-Down field in the Form is Close Request… With Yes and No as the options. The code above will only display records where the App User selected No.

In addition, the list will display the Customer Name of all records that fit the criteria.

EXTRACTING AND DISPLAYING IMAGES

An example of displaying an image with the field name would be:

<ion-item> 
<img width="100" src={{fields.Image_Field_Name.value}}> 
</ion-item>

The 100 in the code is the width of the image.

SHOWING RECORDS FROM ANOTHER FORM THAT HAVE A “RELATION”

If you created a Relation between two Forms, you can then use the Relation to extract field data from the 2nd Form. For help on creating Relations, see our documentation for our Awesome Forms feature.

<ion-item> 
{{relations(fields,'Related_Field_Name','Field_To_Display_Name')}} 
</ion-item>

Below is a real-world example of the code:

<ion-item> 
{{relations(fields,'Customer_Name','Rented_Vehicles')}} 
</ion-item>

In the code above, we have a Relation that links our Customers and Rented Vehicles using Customer Name as the common Field.

You can also add an additional Field from the current Form to the Template such as:

<ion-item> 
{{fields.name.value}} 
{{relations(fields,'Related_Field_Name','Field_To_Display_Name')}} 
</ion-item>

If you want to display multiple Fields from a Related Form you can do this:

<ion-item> 
{{fields.name.value}} 
{{relations(fields,'Related_Field_Name','Field_To_Display_Name')}} {{relations(fields,'Related_Field_Name','Field_To_Display_Name2')}} {{relations(fields,'Related_Field_Name','Field_To_Display_Name3')}} 
</ion-item>

SHOWING RECORDS FROM ANOTHER FORM USING CONDITIONS AND RELATIONS

You may need to display records from 2 different Forms using Conditions. You can use code such as:

<ion-item ng-if="relations(fields,'Dropdown_Field_Name','Related_Form_Field_Name')=='Active'" > 
{{fields.name.value}} 
</ion-item>

I want to create a Report that shows me all of my Rented Vehicles that was not returned.  An example of this code would be:

<ion-item ng-if="fields.Returned.value=='No'"> 
{{relations(fields,'Customer_Name','Customer_Name') }} 
</ion-item>

The top part of the code contains the Field Name and Condition that we want to use. The Field Name is Returned, and we only want to see records where it was set to No.

The second line of code displays the Relation that we’re using (“Customer Name”), and the Customer Name Field that we want to display in the results.

SHOWING RECORDS AND AN IMAGE FROM ANOTHER FORM USING CONDITIONS AND RELATIONS

If you want to show data from another Form using a Relation, a Condition, and display an image, you can use the sample code below:

<ion-item ng-if="fields.Dropdown_Field_Name.value=='No'"> 
<img width="100" src={{relations(fields,'Retlated_Field_Name','Image_Field_Name')}}> 
</ion-item>

In our example, we want to show the Name and Photo of all Customers that didn’t return their Vehicle to us.

The top part of the code contains the Conditional Field Returned, with the Condition as No.

The bottom part of the code contains the Relation Field Customer_Name, and the Image Field License_Photo.

<ion-item ng-if="fields.Returned.value=='No'"> 
<img width="100" src={{relations(fields,'Customer_Name','License_Photo')}}> 
</ion-item>

CREATE A LINK FROM ONE FORM TO ANOTHER THAT AUTO-ADDS RELATION DATA

You can add a hyperlink from one Form to another Form, that starts a new record and auto-adds Relation information.

For example, the code below will take the App User from the Customer Information form to a new Rent record, and automatically add the Customer Name that the App User selected.

<ion-item> 
<div ng-click="openConnectedForm(fields,'Form_Name')"> Open Sample Form </div> 
</ion-item>

In the code above, the name of the Form that should be opened is Form_Name. This is followed by the display text of the link: Open Sample Form.

COLOR CODING A LINK FROM ONE FORM TO ANOTHER THAT AUTO-ADDS RELATION DATA

You an add a background and text color to the link that takes you from one from to another while auto-adding Relation information. See the adjusted code below (from the example above):

<ion-item> 
<div style="background-color:#be0000;color:#ffffff" ng-click="openConnectedForm(fields,'Form_To_Open_Name')"> Open Rent Form </div> 
</ion-item>

Above, we added the following code to the link: style=”background-color:#be0000;color:#ffffff”. This affects the colors. Simply change the hex code to the color code that you want to use.

ADD A COLOR MESSAGE WITH A CONDITION TO A TEMPLATE

You can have a message displayed on the Template based on a Condition from the Form. For example, you may want a red Customer Blocked to display in red if the Block Customer field is Yes in the Form.

<ion-item> 
<div ng-style="fields.Block_Customer.value=='Yes' && {'background-color':'#BE0000'}"> Active </div> 
</ion-item>

ADD A COLOR MESSAGE WITH A MULTI-IF CONDITION TO A TEMPLATE

You can have a message displayed on the Template based on a Condition from the Form. For example, you may want a red Customer Blocked to display in red if the Block Customer field is Yes in the Form. Likewise, you may want it to display green if the Customer Blocked field is No in the Form. Below is the example code:

<ion-item> 
<div ng-if="fields.Block_Customer.value=='Yes' "style="background-color:#BE0000;color:#ffffff">Customer Blocked</div> 
<div ng-if="fields.Block_Customer.value=='No' "style="background-color:#03CE2B;color:#000000">Customer Active</div> 
</ion-item>

ADD A MESSAGE WITH A MULTI-IF CONDITION TO A TEMPALTE WITHOUT COLOR

You may not want to display color with your multi-if condition, if so, see the below code:

<ion-item> 
<div ng-if="fields.Block_Customer.value=='Yes'">Customer Blocked</div> 
<div ng-if="fields.Block_Customer.value=='No'">Customer Active</div> 
</ion-item>

USING AUTOMATIC FIELDS FROM THE ACCOUNT FIELD TYPE

The Awesome Forms feature contains an Account field type that automatically adds the First Name, Last Name, and Email address, and ID of the App User using the Form, to the Form. These fields are titled:

customer_id

customer_email

customer_name

When using the automatic fields, do not apply the “value” at the end of the code. For example use: {{fields.customer_email}} instead of {{fields.customer_email.value}}.

DISPLAYING THE ASSIGNED FIELD IN THE TEMPLATE

When using the Assign feature, one member (with the Permissions) can assign records to another member. An example of when this can be useful is with support tickets. The supervisor may want to assign a support ticket to one of the staff members.

When using the Assign feature, a new field is automatically added to the Form that shows the email address of all Members. This is new Field is invisible to members that don’t have the Permission.

Use the code below to display the Assigned Member’s Email Address in a Template.

<ion-item> 
{{fields.__assigned_to}} 
</ion-item>