Showing posts with label Zoho Creator. Show all posts
Showing posts with label Zoho Creator. Show all posts

Wednesday, February 8, 2017

How to properly set subforms in Zoho Creator Part 2

To build a robust Order form in zoho creator you need to be able to automatically "fetch" the information about a product and let the system pre populate the subform with pre existing data in the Products Table.

First, you need to have a Products form with all the relevant information about the Product. Price, Description, etc.

Second, you need to fetch the Product information based "On user input" inside the items Subform and add the below deluge scripting.

prodct  =  Products  [ID == row.Product];
row.Description = prodct.Description;
row.Price = prodct.Price;
row.Qty = 1;
if ((row.Price  !=  null)  &&  (row.Qty  !=  null))
    row.SubTotal = (row.Price  *  row.Qty);

Check How to properly set subforms in Zoho Creator Part 1

Tuesday, January 3, 2017

6 of the Most Popular Zoho Creator posts of 2016

Zoho speeds up Innovation with mobile App CreatorZoho Creator, Online Database
Fetch Email Id Associated with a UsernameZoho Creator, onlinedatabase
How QR code and barcode scanning with Zoho Creator works?Zoho Creator, Barcode, QRCode
Zoho Creator Hack: Specify "OR"  or "AND" operators when setting criteria for displaying a viewZoho Creator, Views criteria
Why Zoho Creator is winning the database war against MS AccessZoho Creator, MS Access
How to properly set Subforms in Zoho Creator Part 1Zoho Creator, Subforms

Friday, December 2, 2016

Create and Manage HR Documents from ZOHO Creator

Managing your HR processes can be a daunting task.  From collecting new employee information, tracking time off, and handling payroll, there is a lot to keep track of and a lot of documentation to go along with it.  No sweat!  There’s a great tool called ZOHO Creator and you can build a customized HR app that allows you to manage all of your HR data across your entire business.  Then, combined with WebMerge you can generate employee contracts, insurance applications, state forms, and more.

In this example we’re going to show you how you can generate new employee intake documents with WebMerge when an employee is added to your ZOHO Creator app.  We’ll be generating a new employee contract automatically with a little added help from Zapier.

To get started, we are going to create a new document in WebMerge and upload our Employee Contract template (a Microsoft Word document).  This template is already setup with merge fields like {$FirstName}, {$LastName}, etc and that tells WebMerge where to put the employee information throughout the contract.

Next, we’re going to integrate the delivery of the document with SignNow so that we can get the employee’s signature on the contract.  Go to the Delivery tab for your document setup, then click New Delivery.  Select the SignNow option and then authenticate your SignNow account.  Complete the rest of the settings and indicate the signer info, then save the delivery.

Now, it’s time to setup the Zap so that your ZOHO Creator information automatically to WebMerge.  Login to Zapier and create a new Zap with ZOHO Creator as the Trigger and WebMerge as the action. 

Once you authenticate your accounts with Zapier, you’ll need to pick your WebMerge document that you want to merge and then map the merge fields with the corresponding ZOHO Creator fields.  This tells Zapier how to send the data to WebMerge to make sure it is put into your merged document correctly.

After you have mapped the fields, go ahead and jump down to the Test section.  This allows you to send test information from ZOHO to WebMerge using your settings and you will see how the process works.  If you need to make any changes, do so now.  Here’s what our contract looks like:

Congrats, you’re done!  Now you can run your entire HR department through ZOHO and automatically create any documents you need with WebMerge.  What other ways can you use WebMerge in your business?

Create Personalized Documents from Zoho Creator with WebMerge
powered by Zapier

Tuesday, November 29, 2016

How to properly set Subforms in Zoho Creator Part 1

This is the most important step in the process of setting up your zoho creator database. A properly linked setup will enable your information to run smoothly and avoid waisting space ( MB )

First, you need to create at least 2 Forms. For example.- Orders and Items. An Order can have multiple items and 1 item can be part of many Orders. Creating a many to many relationship.

Second, you need to add the Subform Items inside the Form Orders and name it. Then you have to add a Lookup field in the Items Form and click on Existing Relations. 

Do NOT forget this part. This is the key. You must have a lookup field linking the original Form to each record on the subform you are creating. Makes Sense?

If it does not or need any help do not hesitate to contact us. We can guide you through the process to set your Subform for success.

Thursday, July 25, 2013

How to calculate the elapsed time between two Date-Time fields

I have found several functions, scripts and blogs providing different methods to calculate the elapsed time between two date-time fields. However, most of them are hard to understand or involve a higher coding of deluge scripting to obtain the desired result.

Below you will find a solution in 3 lines of code if the Dates belong to the same day

Hr=(input.End_Time.getHour()  -  input.Start_Time.getHour());
Min=(input.End_Time.getMinutes()  /  60  -  input.Start_Time.getMinutes()  /  60);
Elapsed=(Hr  +  Min);

Or 7 lines of code If the Dates vary in Days ...

if(input.Start_Time.getDayOfWeek()  ==  input.End_Time.getDayOfWeek())
Hr=(input.End_Time.getHour()  -  input.Start_Time.getHour());
Min=(input.End_Time.getMinutes()  /  60  -  input.Start_Time.getMinutes()  /  60);
Elapsed=(Hr  +  Min);
else if(input.Start_Time.getDayOfWeek()  <  input.End_Time.getDayOfWeek())
Hr=(input.End_Time.getHour()  -  input.Start_Time.getHour());
Min=(input.End_Time.getMinutes()  /  60  -  input.Start_Time.getMinutes()  /  60);
Day=((input.End_Time.getDayOfYear()  -  input.Start_Time.getDayOfYear())  *  24);
Elapsed=(Day  +  Hr  +  Min);

In the following link you will be able to test the script on a live and free application. Elapsed Time

You may locate the following code in the following places: On user input, On Add On Success, or On Edit On Success

Hope it helps....enjoy.

Friday, July 19, 2013

How to add an image to an HTML View ( page ) in Zoho Creator

If you are already exploring Zoho Creator ability to develop Html Views  ( now known as pages )
you are stepping into a powerful section of your application that will yield great results overtime.

With this in mind you will also need to understand how to incorporate Logos, Images into your pages so the "visual" effect of the application has a more human touch and assist the user to understand what the task in hand is.

Below you will see a sample on how to add a Logo into an HTML View using "Notes" Field. Go to the Form you would like to incorporate the Logo. In this example our "Page" hosts 2 views. View No.1 is Summary Invoice and View No. 2 Product View. Open your Summary Invoice Form and drag the "Add Note" field into the form.

Click Edit on the Note field & look for the Image icon on the top menu bar to upload your image.

Copy & paste the Image URL. 

In order to have a URL you must have uploaded your image to the company server or to a free service such as Flicker or Google  Drive. Click ok and Listo!!!

Thursday, June 27, 2013

How to decide if syncing Zoho Creator to GAPPS is a good business move?

Sometimes if you have built your basic communications operation around Google Interface it seems like a natural blend to incorporate you Zoho Creator application right into the heart of GAPPS. Think again!!!

There are 3 major points of interaction between Zoho Creator & GAPPS. The access, the data & the sharing. After living the frustration of a client of mine first hand and a month long of testing its functionality and performance we can confidently conclude the following.

First, there is no problem visible to the human eye that suggests there is something wrong with "accessing" Zoho Creator via GAPPS. Once installed in your GAPPS account you will see a link to Zoho Creator under the if you click will open the application smoothly and everyone is happy.

Second in line is: the "Data" that you can access inside Zoho Creator from GAPPS. There seems to be intermittent issues. For example.- if you have a field inside your forms to select users from GAPPS the options may magically disappear temporarily and after reloading & reloading they may reappear back.  If you are not a hard core user of your application you may be able to live with reloading and waiting every time this occurs, but if you run your daily operations in Zoho Creator this is an annoying losing time = money nightmare.

And last but not least the "Sharing". This is the most important of all!! Within Creator you have the ability to share your Forms and Views with individual GAPPS users or with Groups. If you select nothing but individual users everything seems to perform as expected, however if you select a Group within GAPPS the performance on your Zoho Creator application will slowdown 5 fold average. 

So unless Zoho or Google comes with a solution around Sharing Groups of users within an application resist the temptation to simplify sharing or suffer  a loss of 5x fold in performance. Your call.

For more details review this Zoho Forum note with more information regarding this possible performance issue related to GAPPS integration.

Saturday, May 25, 2013

How to decide when to use a Lookup field in Zoho Creator?

To make the optimal decision about the type of fields to incorporate into your application you only need to consider one concept; "Always use Lookup fields" A Lookup field can be displayed into nearly any other field form: Radio Button, Checkbox, etc & you are 1000% better by incorporating Lookup fields right from the get go. Let me explain why.When you build an application there are 2 main aspects you need to evaluate:  the size of the application & the usability or user experience for both developers & endusers.

For the size of an application its better to have Lookup fields because it will save you time as you incorporate the field into multiple forms and screens across you application. I had to learn the hard way after a client requested to have the same field across more than +20 screens and had to manually enter the field options , which were a "gazillion"by the way, into each and one of them. We changed course and start adding Lookup fields instead and now we only need to drag the Lookup field and call it up as needed. Also if the Client changes his mind, which mine does regularly due to a dynamic business process, can go into the Lookup field that requires a new option and added or modified it himself.

Regarding the user experience, Lookup field  used to be a problem considering that not all field options were available for a Lookup field. Initially that is why I was apprensive about using Lookup field across the application and settle for a drop down when i was really in need of a checkbox or something else. However, you can now select any field alternative from within a Lookup field therefore the argument above is no longer valid and you are way better of incorporating a Lookup field everywhere you go. As for developer usability, your only concern is the type of field you use & you should consider that Checkboxes will be the most difficult to code around when triggering actions upon selection of multiple checkboxes, but other that is field option selection process not an issue with the Lookup field itself.

Dont make the same mistake I made, save time and start using lookup fields across your application. create a New Tab, name it lookup tables and store everything in there, move it to the end of the list and hide the tab menu. On sharing specs make sure you are the only admin ( or any developers you may have ) with access to this tables and listo!!!

Image for the old Zoho Creator Interface

Wednesday, May 22, 2013

How to fetch records from one table into another in Zoho Creator

The objective of this blog/video is to provide a complete example on how to fetch data from one table into another in Zoho Creator. The first thing that we're going to do is create a new table. So just for the sake of an example, we're going to have "visitors" in our data, and then we're going to create a new menu tab about the visitor.

You want to know its "name" and then, let's do an "email" field, a quick "email" field there and a "phone number". Then we're going to create an additional form and let's call this appointments. And I'll just create it under the tab "visitors" so that both tables are within the same place.

For appointments, we want to pick a visitor so we drag a look-up field. Notice how I chose the look-up field? then, we're going to name it "visitor" and we're going to select it from the table visitor. And we are going to bring the name of that particular visitor. We can actually add visitors from within this form by selecting the option within that form, we can also sort the visitors on alphabetical order and for now this should be enough.

But let's say that in addition to the visitor, obviously we will want to have a "date" for the appointment but we also need the email of this particular visitor, so that we're able to send him a note or something when we request the appointment. So, for the purpose of this example we're going to limit for the email option only.

And now you have two alternatives. You can either type the email of the visitor every time you create an appointment or we can automatically pull that information from the other table every time you select a visitor. So let's create some examples here. Let's go to visitor form. Then I'm going to input a few examples here. So let's do Joe Blow, email, This actually might be a real email so don't send to anybody, okay. We got Joe Blow, then Sue Blow email, And we have a phone number there.Great!!!

Now if we go to the visitor's view there are two records that we just captured. Next we're going to link the information. And this is the objective of this blog/video. So you're going to go to visitor, and you want the system to create an action on your input, so you go to actions on user input, and then you are going to go to script builder form format and the first thing that we need to know &  to do is actually fetch the records. 

And we're going to call those visitors because we are pulling the visitor data from the visitor table into the appointment table....then we're going to select them from visitor's form and we want the name of the visitor to be equal to the visitor input field that you just selected. This is the key to link the information.

This process will pull the information about the visitor that you just selected on form view, and then all we need to do is set a variable name which in this case is going to be the email of the visitor, and we are going to go to collections to get the information about the visitors that we just fetched and assign the email to it.

Visitors email will be our new email name for it. And that's it, we just click "save." Go to the appointments table and every time you select a new visitor the system will automatically populate the email for you. If you go to Sue Blow now, Sue Blow email address appears on there. So I hope this exemplifies the way how you can fetch records from one table to another in Zoho Creator, good luck!

Thursday, May 16, 2013

How to give access to a developer in Zoho Creator

This is probably one of the top 20 most asked questions i seem to be answering all the time.when you are trying to share your work with a developer most of us believe its a 1 step process and we do know how to update / change the user status. However, there is an additional step  you need to consider to fully provide access to a developer to your Zoho Creator account. Please, review the slides for the 2 step process below and let me know if you have any questions.



Tuesday, May 14, 2013

How to update Unit Price into a subform based on Product selection

The sequence to execute the logic you are looking to accomplish is exactly as adding a script on a regular form.  On Add, On Delete, On User Input, but there is a subtle difference in the code and there is also a different way to embed the script into a subform, so lets tackle the way we embed the script.
On a regular form we have several options: Script Builder, Free Flow and Form Definition; where you can actually write the code manually if you know what you are doing. Inside a subform there is NO Script Builder that would guide you through the options of data you can access and a user is left with writing the code manually on a Free Flow approach style. The solution is to write the code using the Script Builder on a regular form save it from a free flow screen and take it into the subform corresponding action.
In the image below you will see an Order Management Form displaying regular fields about a Product and its Unit Price along with a subform that aggregates products in the same way. For the purpose of this example, we have created the script to update the Unit Price based on Product selection.
Now, notice how subtle the difference in the code is once we compare the lines of code that would update the fields on the right ( regular form ) to the ones on the left ( subform ) and you will see that they are nearly identical which provides us with a great opportunity to quickly incorporate scripts int any subform. Write the script on a regular form then paste it into the subform and correct the subtle difference.
//Fetches the information from the "Products" table
selected_Product = Products [Code = input.Order_Items];
//Updates the value of Unit Price using the stored value from "Products" table
input.Unit_Price = selected_Product.Price;
//Fetches the information from the "Products" table
selected_Product = Products [Code = row.Order_Items];
//Updates the value of Unit Price using the stored value from "Products" table
row.Unit_Price = selected_Product.Price;
Notice that the only difference between the 2 is the word row. before the field value of the subform. With this knowledge you can now write the script you need on a regular form by simulating the subform fields, import the code and modify with the word row. as needed.