Search the help documentation

Search:

Can't find what you are looking for? Use the Feedback tab in your app to submit an issue, or email support@ qrimp.com.


idnamedescriptionParentTopic
deleteedit1286Design ModeDesign Mode is a tool that lets you quickly edit [Field Templates] to change the display of your fields in any table and any view.

To turn design mode on, go to Design > Design Mode On.

<img class="border" src="attachments/developer.qrimp.com-987b9879-2d1b-4d51-8275-220c47408226/designmodeon.png" />

A gear icon will appear near the top right every field that has a field template. Click the gear to edit the template.
Field Templates
deleteedit141Deployment ManagerWith the Deployment Manager, you can push changes in an application to another application. This allows you to customize an application in a development environment, then move those changes to a test environment, then to a production environment.

<strong>We highly recommend you backup your target application before performing a deployment. If an error occurs during the deployment process or network connectivity is lost, your target application may be rendered unusable.</strong>

There are two ways to deploy your application:
<ol><li><strong>Full Deployment</strong><p class=blurb>If you click the check box by the Full Deployment option, an full copy of your application will be moved to the target application specified in the Application text box. <br><br>This option will overwrite all system tables and user tables containing data for your application. If you would like to preserve information entered into your target application, do not check this box.<br><br>Changes to your user tables, including new columns or new tables will be copied in a full deployment.</p></li><li><strong>Default Deployment</strong><p class=blurb>The default deployment scenario will copy all system tables except those that manage user configuration, including the following tables: Users, Groups, Attachments, Site Settings, User Groups, User Portals, and others like that. This will allow you to configure design and development aspects of your system while preserving user settings for different environments.<br /><br />Under the default deployment scenario, changes to the user tables are not deployed, only content of the system tables. If you add a column or table to your development environment, <strong>you will need to modify your target environment to include the new tables and columns before deploying</strong> your Qrimp App to the target system.</p></li></ol>

<h4>Usage</h4>
To use the deployment manager, use this suffix for your app:

synchronize.aspx?deploy=true

For example, if your app is http://localhost/qrimp, then the deploy url would be:

http://localhost/qrimp/synchronize.aspx?deploy=true

If you use the deployment manager frequently, you can add a menu. You can read more about [Menus] for help with this.
Working Offline, Backing Up, Getting Data out
deleteedit188Dependent Select BoxesSometimes it is convenient to allow users of your Qrimp application to filter the items in one select box by choosing an item in another select box. For example, when choosing to examine fuel economy by vehicle, because there are hundreds of different types of cars, you could let your users filter by Make, and then show only the particular models for that make in another box.

In this Help Topic, we will use another example that fits with our Campaign Contributions system, where when choosing a candidate to add a contribution for, you can filter the list by the candidates party. We'll end up with a dependent select box like the image below:
<img src="http://www.qrimp.com/blog/dependent_select_box.png" style='border:solid 1px navy' />

Here is a video that shows the dependent select boxes in action:
<div style='border:solid 1px navy'><object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="322" height="184" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0"><param name="src" value="http://www.qrimp.com/blog/dependent_select_box_animated.swf"/><param name="bgcolor" value="#1a1a1a"/><param name="quality" value="best"/><param name="allowScriptAccess" value="always"/><param name="allowFullScreen" value="true"/><param name="scale" value="showall"/><param name="flashVars" value="autostart=false"/><embed name="csSWF" src="http://www.qrimp.com/blog/dependent_select_box_animated.swf" width="322" height="184" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed></object></div>

To get started, we will first go to the Add New screen for the Contributions. Notice the default select box has only a list of candidates:
<img src="http://www.qrimp.com/blog/contributions_addnew.png" style='border:solid 1px navy' />

From the add new screen for contributions, select Design > Field Templates:
<img src='http://www.qrimp.com/blog/contributions_field_templates.png' style='border:solid 1px navy' />



Next, we will click the edit icon for the Candidate column. Since we have not modified the template for this field yet, Qrimp has created one for us automatically that looks like this:
<img src="http://www.qrimp.com/blog/default_candidate_field.png" style='border:solid 1px navy' />

To add a select box for Parties that will filter the candidates list, we will edit the field template to look like this:
<img src='http://www.qrimp.com/blog/candidate_field_template_with_filter_by_party.png' style='border:solid 1px navy' />

Notice we have inserted this block of text before the Candidate select box:
<noeval><blockquote style='border:solid 1px navy;background-color:lightgray'></blockquote></noeval>

This tells Qrimp to create a select box that will filter the Candidate select box and show only those candidates where the party is equal to the party we select in the Parties select box.

If we want to hide the Candidates select box until a selection in the Parties select box has been made, we can use code like this:
<noeval><blockquote style='border:solid 1px navy;background-color:lightgray;'> then <span id=Candidate_selectbox>Candidate</span></blockquote></noeval>

The span indicated with the id <strong>Candidate_selectbox</strong> is the location where Qrimp will display the list of candidates in the party that we choose in the Parties box. This example behaves like the video below:

<div style='border:solid 1px navy'><object id="csSWF" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="387" height="342" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,28,0"><param name="src" value="http://www.qrimp.com/blog/dependent_select_box_hide_original_select.swf"/><param name="bgcolor" value="#1a1a1a"/><param name="quality" value="best"/><param name="allowScriptAccess" value="always"/><param name="allowFullScreen" value="true"/><param name="scale" value="showall"/><param name="flashVars" value="autostart=false"/><embed name="csSWF" src="http://www.qrimp.com/blog/dependent_select_box_hide_original_select.swf" width="387" height="342" bgcolor="#1a1a1a" quality="best" allowScriptAccess="always" allowFullScreen="true" scale="showall" flashVars="autostart=false" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed></object></div>

Your final output should be in this format:
<pre>
then <span id='TABLE_WITH_DATA_TO_FILTER_selectbox'>COLUMN_NAME</span>
</pre>
The code above is telling Qrimp to display a SELECT box with data that is used to filter another select box that ultimately has the list of items of which one is the desired selection for the field in this table.

So for example, if you are creating a trouble ticket system for equipment and have 100 pieces of equipment, each with an EquipmentType and you want to make it easy for your users to select just one piece of that equipment, you'd use a command like the following:
<pre>
then <span id='Equipment_selectbox'>Piece of Equipment</span>
</pre>



Field Templates
deleteedit1270Deleting a UserTo delete a user, go to Admin > Manage Users.

Click the name of the user you want to delete:

<img class="border" src="/attachments/developer.qrimp.com-e624ebb2-0412-447f-a283-5f180dba3538/clickusername.png" />

In the [ContentHeader], click the red X delete button:

<img class="border" src="/attachments/developer.qrimp.com-c6a1fe39-81aa-48b4-9e45-7a7ff3f3c146/userdeleteormakeinactive.png" />

If the user has created records, or has permissions associated with their account, you will either need to delete or reassign those records:

<img src="attachments/developer.qrimp.com-d46cd829-58fe-4e81-a885-6bc04deab9c7/cantdeleteuserbecauserecords.png" />
Managing Users
deleteedit1267Deleting a TableGo to Develop > Manage Tables

Find your table and click the delete link:

<img class="border" width="550" src="attachments/developer.qrimp.com-0ecb3fc3-22b8-470c-9df8-4be9df9de6b8/deletetable.png" />

You will be prompted to make sure you really want to delete the table:

<img class="border" src="attachments/developer.qrimp.com-f72f6273-f799-443e-a89d-3c71376c3c53/deletetablewarning.png" />

<strong>Deleting a table is final!</strong> If you are sure you won't ever need any of the data in this table again at any point in the future, go ahead and click yes.

If your table had relationships, you will be warned about those connections so that you do not have orphaned records.

Manage Tables
deleteedit1282Delete Multiple AttachmentsTo delete multiple attachments, go to the record that your items are attached to. Click the attachments link on the right-hand side at the top.

<img class="border" src="attachments/developer.qrimp.com-226976cd-1c68-4807-98f4-48f100319144/clickattachmentslink.png" />

Click the checkboxes beside each item you wish to delete:

<img class="border" src="attachments/developer.qrimp.com-f5f0b1c0-608a-4b54-8775-6a2100d1b320/deletemultipleattachments.png" />

You will get a warning asking whether you are sure you want to delete all of these items. Click Okay to delete.

<img class="border" src="attachments/developer.qrimp.com-61066e9e-83c3-4540-9d02-e623beb98112/areyousureyouwanttodeletealltheseitems.png" />

Your items will be deleted from your database.
Attachments
deleteedit1277Delete an AttachmentTo delete a single attachment, go to the record that your item is attached to. Click the attachments link on the right-hand side at the top.

<img class="border" src="attachments/developer.qrimp.com-226976cd-1c68-4807-98f4-48f100319144/clickattachmentslink.png" />

Click the delete icon next to the item you want to delete:

<img class="border" src="attachments/developer.qrimp.com-ad673804-608c-4770-ab4e-e5792961fff8/deleteattachmentgridview.png" />

You will get a warning asking whether you are sure you want to delete this item. Click Okay to delete.

<img class="border" src="attachments/developer.qrimp.com-590bbbd6-17d5-43cb-b84b-93c517188fe0/areyousureyouwanttodeletethisitemattachment.png" />

Your item will be deleted from your database.
Attachments
deleteedit81DefinitionsSome definitions of commonly used terms.
deleteedit1314Default View on the Custom View BuilderThe default in the custom view builder is a modified version of the [Grid View].

You can modify the default view with:

[Grid Edit]
[Reordering Fields]
[Hiding Fields]
[Column Level Security]
Links in the [Menus]
[Field Templates]

There is not any way to delete this default view from your list at this time.
Custom Views (Sorting and Filtering)
deleteedit103Default ViewIf you don't change this setting, the default view is always the table/grid view, showing all of your data, dependent of course, on your [Security] rules.

On the Develop > [Table Settings] page, there is a field called "Defaultview" with a drop-down list that lets you choose among the many [Views] (these are basically page templates) in your application to set which one is the default for that table. This is handy if you want people to see your table laid out in a particular way.

<img src="/attachments/1a26b6f1-f45e-4fc2-b502-a9f2f88c1c54/DefaultView.jpg">



Views
deleteedit193Default TemplateWhen you build a database, data can be displayed in different ways. For example, sometimes the data appears in a select box, a table or grid view, and if it is a record related to another one, sometimes it appears on the right hand side when viewing a main record.

Let's say we have a table called Transactions that has many Payments associated with it. When creating a Payment, a select box will appear prompting the user to select a Transaction to associate with the new payment. If, after creating the payment, the transaction selected in the drop down box is viewed, the right hand rail will show a list of Payments associated with the Transaction record.

In this case, Qrimp will try to be smart about how it shows those records in the right hand rail so you can understand exactly which payments those are. Because screen space in the browser is limited, Qrimp chooses just a single piece of information to display. It does this in a particular order:

<ol>
<li>If a field exists in the table called "Name" that data is shown.
<li>If no Name field exists, Qrimp finds the first text field with 100 or fewer characters to represent the record.
<li>If no no text fields with less than 100 characters is found, Qrimp shows the ID for the record.
</ol>

Sometimes this strategy is suboptimal, meaning, you want to "help" Qrimp understand how to present the data to your application's users. To help Qrimp, each table in your database has [Table Settings] which you can use to describe how Qrimp should display the data in it.

There are two fields on the Table Settings page that you can use to tell Qrimp how to display the data, the first is the [default field] which appears near the top of Table Settings Edit screen. If you want Qrimp to display data from only one field in your table in the right hand rail or in select boxes, choose a column in the Default Field drop down.

The Second field is the Default Template, which can be seen near the bottom of the page. If you want to create a template for records in the table that contains information for several columns, use the Default Template.

Continuing from the example above, let's have a Payments table with just the ID, Amount, PaymentDate, and PaymentMethod. The PaymentMethod is a pickfrom the PaymentMethods table. In this table, there is no text field to represent the payments, so we want to create a Default Template using the Payment Amount and the Payment Method. Since the Payment Method is a pick from, we need to use Square Brackets to represent this.

To accomplish our goals, we will create a Default Template as follows:
<noeval><pre>
$[Amount] - [PaymentMethods:[PaymentMethod]]
</pre></noeval>

This use of Square Brackets tells Qrimp, that when displaying a Payment, format the data using a dollar sign, then the Amount of the payment, followed by the name of the payment method used, which is retrieved from the PaymentMethods table using the value in the PaymentMethod field of the particular Payment record.

Table Settings
deleteedit102Default Start PageYou can set a default start page for each group in the [User Group Settings]. This determines which page any user in that group will see when they log in. By default, the start page for all [user groups] except anonymous is the [Dashboard]. The [anonymous users] group sees the login page by default, because they are not authorized to view any information unless you specify that they can.

You can change the default start page to almost any page or view in your app. Copy and paste a url with multiple [Query String Parameters] to sent user groups to very specific records and views.

<h2>Changing the Default Start Page</h2>

First, copy the <a href="db.aspx?t=helptopics&id=261&vid=11">url</a> to the page you want your user group to go to. This could be something like "db.aspx?t=Projects&vid=11&id=4". This would take the user to the detail view for your Project with an id of 4.

Then, go to Admin > User Groups.

You will see a table showing existing user groups. Click the edit icon in the id column of the group you want to change.

Copy your url into the Default Start page field.

Click save.

To test, have a user from that group, log out and log back in to the system. When they log back in, they should start out at the new default start page.
User Group Settings
deleteedit1342Default FieldsA default field is the field from any table that is displayed in a related table or on the calendar view.

<img class="border" width="550" src="http://developer.qrimp.com/attachments/developer.qrimp.com-b6d0bb35-3e7a-4294-9174-523e20fd428a/defaultfieldinrelateddata.png" />

If no default field is selected, Qrimp will use the first text field in your table as the default field. If there is no text field, Qrimp will use whichever field comes first.

<h2>Changing the Default Field</h2>
To change the default field, go to your table, then click the Table Management sub-menu.

At the top of the table management page, click the link that says "Configure Table Settings".

In the defaultfield drop-down, select the name of the field you want to appear.
<img class="border" src="http://developer.qrimp.com/attachments/developer.qrimp.com-4470af98-dea4-4014-994e-61ddb6092df5/changedefaultfieldtodescription.png" />

In this example, we will change the field from being the name of the timesheet to the description.




Table Settings
deleteedit1321Date SearchTo search by date, look near the top right of your app. You will see a calendar icon. Click on the icon.

<img class="border" src="attachments/developer.qrimp.com-69e9ac70-5df6-44b1-8b2f-6f0b1996c8f9/datesearch.png" />

Click a date then click search.
<img class="border" src="attachments/developer.qrimp.com-075663bf-d8f2-4ff2-b862-ea8cc7d55dbc/dateinsearchfield.png" />

Your search results appear. They are linked to the database records, so click them to go to the record.
<img class="border" src="attachments/developer.qrimp.com-237ff48f-f87e-4ddc-9ec7-83738ee50b39/datesearchresults.png" />
Search
deleteedit161Date FormatsSometimes you want to display dates in a particular format that suits the context. Maybe you only want to display the time or the day. You can do this with [square brackets] notation like so:

<textarea><span style='font-family:monospace;font-size:1.2em;'><strong></strong></span></textarea>

Where <strong><em>datevalue</em></strong> is any valid date including square bracket notation references to column names or the current system time <noeval>6/1/2024 10:59 PM</noeval> and <strong><em>validdateformat</em></strong> is a string built from the components below.

Examples:

<strong>MM/dd/yyyy hh:mm tt</strong> produces <noeval></noeval>

<strong>ddd, dd MMM yyy HH:mm:ss GMT zz</strong> produces <noeval> (this is the format for XML)</noeval>

<h4>Here are more options for date formats</h4> d - Short date
%d - Day number
M?d - Month and day number
dd - Day number, two digits
ddd - Abbreviated day name
dddd - Full day name
f - Full (long date, short time)
%f - Fractions of second, one digit
s^f - Seconds and fractions of second, one digit
ff - Fractions of second, two digits
fff - Fractions of second, three digits
ffff - Fractions of second, four digits
g - General
%g - Era (eg. A.D.)
y-g - Year and era (eg. 5-A.D.)
gg - Era (eg. A.D.)
h - Hour (1-12) (Doesn't seem to work)
%h - Hour (1-12)
h-m - Hour and minute
hh - Hour (01-12)
H - Hour (0-23) (Doesn't seem to work)
HH - Hour (00-23)
m - Month name and date
%m - Minute (0-59)
hh_m - Hour and minute (0-59)
mm - Minute (00-59)
M - Month name and date
%M - Month number (1-12)
M d - Month number and day number
MM - Month number (01-12)
MMM - Month abbreviation
MMMM - Month name
s - Standard sortable date/time
%s - Seconds (0-59)
s^ff - Seconds (0-59) and fraction of seconds
ss - Seconds (00-59)
t - Long time
%t - First letter of AM/PM designator
hh t - Hour and first letter of AM/PM designator
tt - AM/PM designator
y - Short date
%y - Year (0-99)
m-y - Month and year
yy - Year (00-99)
yyyy - Year (0000-9999)
z - Doesn't work
%z - Whole hour time zone (-12 to 13)
Zone:z - Zone - and whole hour time zone (-12 to 13)
zz - Whole hour time zone (-12 to 13) with two digits
zzz - Time zone in hours and minutes})
Square Brackets
deleteedit42DatatypeA datatype is a type of data. Some data types include currency, decimals, text, date/time, yes/no and [look-up tables]. Choosing a datatype allows you increase data accuracy by restricting which kind of information users can enter when they are creating new records.

<h2>Data Accuracy</h2>
Choose a datatype that accurately describes which type of data a field will contain will make your application more efficient and less error-prone. It will also make any reports and charts you generate more precise. Think carefully about which datatype is most appropriate for your field. If you create a field called HireDate in your Employees table, choose the datatype date/time, users will only be able to enter properly formatted dates. If you chose a less specific datatype, such as Multi-line text, employees could enter the entire story of how they were hired in the HireDate field.
Definitions
deleteedit252Database tableA database table is the master sheet of data in a particular area. It is best to create a new database table for each separate type of thing ie: Contacts, Contact Type, Employees, Inventory, Tasks, Invoices, etc. See also [Introduction to Tables].

To see all of your database tables go to Develop > Manage Tables. (See also: [Manage Tables])

Database tables can be linked together with relationships. For example, one employee may be related to many tasks. This would be a 'many-to-many' relationship. See [Many-to-Many].
Definitions
deleteedit78Data TableRead more about <a href="http://en.wikipedia.org/wiki/Table_(database)">database tables</a> on wikipedia.Definitions
deleteedit198Data AnalysisGet deeper insight into your data with queries, reports and charts.
deleteedit215DashboardYour dashboard is a collection of portals that you subscribe to. Dashboards make great home pages, as they give you an overview of what is happening in your app and/or your company.

To learn more about customizing your dashboard, read about <a href="db.aspx?t=HelpTopics&id=181&vid=11">Portals</a>.

<img class="border" width="600px" src="attachments/developer.qrimp.com-14857d23-63f4-4b4c-a3fd-a6a9f85a0a7d/calendarlistportalamongothers.png" />
Navigation
deleteedit247Custom Views (Sorting and Filtering)To enable custom views, you must install the custom views module. Go to Develop > Add Modules. Scroll down to "Custom View By Reports" and click "Add module".

To add a new custom view, go to the [grid view] of your table. At the top of the page you will see a drop down that shows "View By". In the drop down, select "Add new view".
<img class="border" src="/attachments/developer.qrimp.com-5cf417dc-577b-47ba-b6e2-0f10b9a36501/custom views add new.png" />

Enter a Name for your view and select whether you want to make it the default view for yourself or all other users. Choose the columns you wish to appear in the view. Put the columns in the order you would like them in.
<img class="border" src="/attachments/developer.qrimp.com-5c26dc45-db4c-4c6a-859b-87f470f11700/custom views 1.PNG" />

If desired, you can add further sorting and grouping to your columns.

Note: You must select a column in the GroupBy section in order to add totals for your view.

<img class="border" src="/attachments/developer.qrimp.com-2eda0aab-df5f-49a6-9ffe-e04b1236e459/custom views sorting and grouping.png" />

You can also add optional filters to the view, to only show data that meets certain requirements.
<img class="border" src="/attachments/developer.qrimp.com-4e89830b-e98a-48f8-8917-e564829492da/custom views filtering.png" />

Select which users and/or groups can see the view:
<img class="border" src="/attachments/developer.qrimp.com-28f2f10b-1f33-4a20-adab-89a885b6fbc2/custom views permissions.png" />

Last but not least, click Save:
<img class="border" src="/attachments/developer.qrimp.com-93ddb351-22ea-4b1d-a018-2856d3973e14/custom views save.png" />

And then you have a view. This is a very simple view of Teams by year formed.
<img class="border" src="/attachments/developer.qrimp.com-655b7af9-1337-49e7-a310-a26357c3edb7/custom views teams by year.png" />
Views
deleteedit179Custom Pagination Look and FeelTo create your own Custom Paging for your system you will have to write some [JavaScript].

First, you will call the subset of numbers from the database that you will want to use to create the custom pagination.

You can call the subset two ways: JSON or XML.

If you use JSON:

<div style="border: 2px black solid; font-family:monospace; background: #f3f3ff; padding: 1em; overflow:scroll white-space: nowrap ;">paginationJson = getUrlString('db.aspx?t=Inventory&vid=73&noheader=true&nofooter=true&_pagingInfo=JSON' + filterQueryString)</div>

This URL will pull the subset of numbers

<div style="border: 2px black solid; font-family:monospace; background: #f3f3ff; padding: 1em; white-space: nowrap ";">{"paginationInfo":{"pageSize":9,"numPages":9,"numRecords":79,"currentPage":1}}</div>

Then you must parse the information. In the example we pull the parser from the Yahoo JavaScript Library.

<div style="border: 2px black solid; font-family:monospace; background: #f3f3ff; padding: 1em; white-space: nowrap ;"> try {
var paginationInfo = YAHOO.lang.JSON.parse(paginationJson).paginationInfo;
}
catch (e) {
alert(e);
}</div>

Finally, you can assign the global variables and begin to manipulate the page to create your own Custom Pagination.

<div style="border: 2px black solid; font-family:monospace; background: #f3f3ff; padding: 1em; overflow: scroll; white-space: nowrap ";">numPages = paginationInfo.numPages;
currentPage = paginationInfo.currentPage;
numItems = paginationInfo.numRecords;
pageSize = paginationInfo.pageSize;</div>



If you use XML you will parse the information differently

<div style="border: 2px black solid; font-family:monospace; background: #f3f3ff; padding: 1em; overflow: scroll; white-space: nowrap ">try //Internet Explorer
{
xml=new ActiveXObject("Microsoft.XMLDOM");
}
catch(e)
{
try //Firefox, Mozilla, Opera, etc.
{
xml=document.implementation.createDocument("","",null);
}
catch(e)
{
alert(e.message);
}
}
var url = 'db.aspx?t=inventory&vid=73&qid=3&_paginginfo=true';
xml.async=false;
xml.load(url);
//<paginginfo><pagesize>25</pagesize><numpages>0</numpages><numrecords>92</numrecords><currpage>1</currpage></paginginfo>
document.write('numpages=' + xml.getElementsByTagName("numpages")[0].childNodes[0].nodeValue + '<br>');
document.write('pagesize=' + xml.getElementsByTagName("pagesize")[0].childNodes[0].nodeValue + '<br>');
document.write('numrecords=' + xml.getElementsByTagName("numrecords")[0].childNodes[0].nodeValue + '<br>');
document.write('currpage=' + xml.getElementsByTagName("currpage")[0].childNodes[0].nodeValue + '<br>');
</div>

As you can see XML does its own set of calls for the parsing. IE and other browsers are different so the beginning is checking to see what browser it is. Then the numbers get called in the query string just like JSON. The main difference is the way the strings are parsed.

Now you can manipulate the variables to the your type of Custom Pagination.

Here is an example of a 'footer' Custom Pagination for a shopping cart of items.

<div style="border: 2px black solid; font-family:monospace; background: #f3f3ff; padding: 1em; overflow: scroll; white-space: nowrap ">
function createItemListFooter () {

paginationJson = getUrlString('db.aspx?t=Inventory&vid=73&noheader=true&nofooter=true&_paginginfo=json' + filterQueryString);

try {
var paginationInfo = YAHOO.lang.JSON.parse(paginationJson).paginationInfo;
}
catch (e) {
alert(e);
}

numPages = paginationInfo.numPages;

currentPage = paginationInfo.currentPage;
numItems = paginationInfo.numRecords;

var paginationHtml = "";

for (var i = 1; i <= paginationInfo.numPages ; i++) {
if (i == 1) {
paginationHtml = paginationHtml + "<div id=page" + i + " class=\"selectedPage pageNumber\"><a href=\"#\" onclick=\"displayPage(" + i + ")\">" + i + "</a></div>";
} else {
paginationHtml = paginationHtml + "<div id=page" + i + " class=pageNumber><a href=\"#\" onclick=\"displayPage(" + i + ")\">" + i + "</a></div>";
}
}

if (paginationInfo.numPages > 1) {

paginationHtml = paginationHtml + "<div id=nextButton class=prevNextButtons><a href=\"#\" onclick=\"nextPage()\">Next</a></div><div id=prevButton class=\"prevNextButtons hide\"><a href=\"#\" onclick=\"previousPage()\">Previous</a></div>"
}

document.getElementById("itemListFooter").innerHTML = paginationHtml;
}

function displayPage (pageNumber) {

if (pageNumber != currentPage) {

YAHOO.util.Dom.removeClass("page"+currentPage, "selectedPage");
YAHOO.util.Dom.addClass("page"+pageNumber, "selectedPage");

if (pageNumber == 1) {
YAHOO.util.Dom.addClass("prevButton", "hide");
} else if (currentPage == 1) {
YAHOO.util.Dom.removeClass("prevButton", "hide");
}


if (pageNumber == numPages) {
YAHOO.util.Dom.addClass("nextButton", "hide");
} else if (currentPage == numPages) {
YAHOO.util.Dom.removeClass("nextButton", "hide");
}

currentPage = pageNumber;

displayItemList();

}

}

function nextPage() {
displayPage (currentPage + 1);
}

function previousPage() {
displayPage (currentPage - 1);
}
</div>

This code manipulates the JSON from the above example to create this:

<img src="https://developer.qrimp.com/attachments/664353d5-59b5-4408-90db-7a08300aefe3/PaginationFooter.png">

<img src="https://developer.qrimp.com/attachments/218508a3-c74d-404a-86e4-e52ca0e0cae5/PaginationFooter1.png">
Javascript and JQuery in Qrimp
deleteedit1274Custom CSSYou can use [CSS] to style any part of your Qrimp app. If you only want the style to be applicable to a particular page, table or view, you can write the CSS in a style tag in [views] or [headers and footers].Changing the Look and Feel of Your App
deleteedit1275CSSCSS stands for Cascading Style Sheets. This is the code that determines the colors and positions of elements in your web app.Definitions
deleteedit175CRUDIn every Qrimp app, there are five default [operations] that users can perform on a database: Create, Read, Update, Delete and Admin. To allow your users to perform these operations, give them the permission to do so using [Table Security].

You can create as many levels of access as you like. Add, remove, or adjust the configuration of existing operations to fine tune the capabilities your users have within your Qrimp Application.

Learn more about CRUD by searching the web.
Definitions
go to page: 1 2 3 4 5 6 7 8 9 10 243 records. Showing