Javascript – Nubuilder Specific to save Date to DateUpdated field on Record Change (not subform)

From the admin screen go to Develop / Forms / Form of choice / Custom Code / Javascript

To place focus on the search button

function nuLoadBrowse(){
    $('#nuSearchButton').focus();
}

Function to Get System Date

function GetTodayDate() {
    var tdate = new Date();
    var dd = tdate.getDate(); //yields day
    var MM = tdate.getMonth(); //yields month
    var twoDigitMonth = ((tdate.getMonth().length+1) === 1)? (tdate.getMonth()+1) : '' + (tdate.getMonth()+1);
    var yyyy = tdate.getFullYear(); //yields year
    var currdate = dd + "-" + twoDigitMonth + "-" + yyyy;

    return currdate;
}

Function to update field called “DateUpdated” on edit- to be used with the GetTodayDate() function

function nuOnSave() {
if (nuFORM.edited == true)
    {
        $( "#DateUpdated" ).val( GetTodayDate() );
    }
    return true; 

}

nuBuilderPro – Import csv into a table of your application MySQL database (Its very easy)

I don’t know about you but for me its pretty rare to start an application without any information. At the very least there may be lookup tables or you have information collected in a spreadsheet. Thus when I came to nuBuilderPro one of the first things I researched was how to get information into a table. nuBuilderPro uses a vanilla version of mySQL in the background so this is what we will be working with. We will be attempting to import a csv file. You will need a clean organised csv file.

First create the tables that you require information to go into. Ensure that you have exactly the same table structure as the csv file that you wish to import. Therefore either adjust the table or the csv appropriately. Failure to have the same structure will halt the import.

Next navigate to the administration panel using your particular variation of the below url. Note that it is important to have the / at the end of the url otherwise you will be taken to the more specific database administration page where you design forms. Don’t worry if this happens you can still get to the php administration page by hitting the databases button. In fact this is an alternative way of getting to the screens that I show here.

https://youracount.nubuilder.net/nuadmin/

Use your username and password to get into the nuadmin index panel

Once you have entered your username and password appropriately you should be at the following address

https://youraccount.nubuilder.net/nuadmin/index.php

nuBuilderPro-nuAdminScreen

Now select the small spanner sign in the top right – this takes you to the php admin section for your whole VPS there are other ways of going into this web page but we will go this way for now.
You should be taken to a section which looks as follows

nuBuilderPro-phpMyAdmin

All databases within your VPS should be listed on the left. Each new application will have a database created for it. Each database holds all the required tables that hold your database and are listed on the left hand side. Click on the database in question and then hit structure. You are interested not just in the database but also the particular table. There is a notification grey line at the top of the page which shows you what database and what table you are in.

Importing a csv is a straightforward process of hitting the import button at the top selecting the csv file and hitting the go button. If the csv file contains column names you may wish to alter the row at which import starts.

nubuilderPro-csvimport

Once import has been completed it will indicate how many lines were imported and how long it took. If there are problems you will obtain a message indicating so. I tried to create a simple Russian / English dictionary and it was really very straightforward. It is important that the csv has the right number of columns as per your designed table.

nuBuilderPro – a database driven Web Framework for simple Form Design

I have been seeking a way of designing simple web forms for a reasonable cost for some time. I was continually coming across either very professional products with really quite large annual charges (alpha anywhere) or alternatively products that charge a per seat cost for users (zoho creator). Fine I don’t mind paying for software I really don’t but what about a project that only brings in $2000 dollars a year how can I justify Alpha Anywhere’s costs for that or how can I give access to individuals who will need an application very rarely but for whom there is real value in knowing this information. I have long believed that software costs should be coming down in cost rather than ever increasing and getting users interested in your applications is often impossibly hard at the best of times when there is no cost let alone when you tell them that they need to shell out for a subscription. What happens to the user who only needs something once in a blue moon or a user not from within your department within a section where you have no control of the budget? I’ve recently had a lot of success with open source software and as a result I have been scouring the internet for options for some years. Recently I found a project called nuBuilderPro from an Australian based development house called nuSoftware. nuBuilderPro is version 3 of what I think is their own framework. It looked good and what’s more although based on the LAMP stack which is something I’ve had very little dealings with they offered a fully hosted VPS service where I could experiment and get my bearings. They completely host the development environment for a very very reasonable price. Given that I didn’t know whether it was going to be useful to me yet this seemed an ideal opportunity to experiment. It has only been a short time since sign up but I can already see that it will prove useful. I have signed up for the most basic of server accounts and at 17th of January created 3 very basic applications. All in about 3 hours of work. Thats what I like to see proper RAD development.

The website is here.

www.nubuilder.net

And the options for hosting are here

www.nubuilder.net/hosting.php

Importantly you can start small get to know the product and work up – additional users do NOT cost you extra money, login security comes built in and you are free to design as many applications as you can fit within your VPS. Given that when I first signed up I didn’t have any users or applications and didn’t know how to design applications, this seemed completely ideal.

So far it looks like I’m going to use it for small but important applications that need very quick development that are very distributed. That’s not to say it couldn’t be used for much larger applications but I need to run before I can walk. Given the underlying database engine and stack it is likely that it will be able to handle much bigger projects than I am likely to throw at it. Although Open Source all but the top of the stack has been in solid development for many years I guess the question mark is over the control management framework for the database integration and form building UIs which is somewhat new and untested. I would very likely have gone with something like Lightswitch but Microsoft have been giving a distinct lack of commitment to any one RAD web tool recently. Certainly it is true that very few individuals seem to know about it and the forum is somewhat quiet compared with some open source projects. Importantly though I haven’t come across any other open source projects with the price model that they have and importantly I can easily get any information in and out so I don’t believe I am taking any risk. I hope to be investigating it further over the coming months. From what I have seen so far I am very impressed and did I say it had a unique price model anyway watch this space!

Nubuilder Pro 3 – Example Web Application Deletion and Creation – Race Number system

Objective :

Create a simple online web application that can be used to type in race numbers. Once a number is typed in the time will automatically posted to a field. This could be used to manually record numbers of competitors coming across a finish line on mobile phones provided all phones have access to a web browser and they have 4G connection or wifi connection.

First go to the administrator url and sign in with the Global Administrator username and password to get into the design form.

The format of this is

If you wish to delete a project go to the delete tab within the site select the site you wish to delete then hit Delete

It will then present you with a sanity check window

Pressing enter again you get a site administration check box again

Adding a New Site in Nubuilder Pro
Go back to the opening screen and this time go to the Add Tab.

You should be presented with an Add Dialog window.
Type in the name you wish your new project to be here I call it racenumber – note the name has to be all lower case.
Hit create after which there will be a short delay while the site is created.

There will be a short delay while the site is created

You will then be presented with the Administration panel with your new site created something like the following

Now click on the site you are interested in this case race number which will take you to the login panel

Now enter the global username and password that you were originally handed out.

Once logged in you should be presented with the following screen.

Hitting the database button will take you to the php-myadmin control panel

The First step is to create a table to hold all the data

This can be done buy using the create table button on the bottom left.

Here I am creating a table called T002Time to which I add three columns. I set the AI which stands for Auto Increment to yes and I set this field as an index I also add a time field and set the default to current_time – note that in phpmyadmin fields will not necessarily accept default functions but Time variable type accepts current_time. Current_time function returns date and time.

Here I have forgotten the racenumber field so I create some SQL to add this in.

Now we want to go back to the Nubuilder web application panel

Hit the form wizard – now select the T002Time drop down in the table name and use the add to Browse column and add to Form Objects button to transfer everything across to the respective columns as follows.

This will run and in the background create a form which you can see by going through the User Home screen as follows

Now lets remove some fields we no longer need
Go to objects we can see that three columns relate to to the T002Time(form) Lets do several things
1. Remove DTime from the form
2. Remove the Race FKID from the form
3. Change the label of the home Form button T002Timebtn to Race Numbers

Firstly in the objects button go into the two lines you wish to remove from the form

and when the object details appear delete them.

After a warning message you should be presented with the new list of object without the object recently deleted.

The new form should look something like this.

That’s 1 and 2 done now lets try and get that button bigger.

Now in here I am going to remove the RACEFKID and make the DTIME much wider

Now we see

Now lets see if we can move this field to the centre of the screen this can be done while in global administration mode by clicking on the following button

Reposition then add users and that should be you.