top of page

5 Newbie Mistakes with Knack Apps

Updated: Sep 24, 2022

Questions about your Knack app? Let's Chat.​. I do a lot of training for beginner Knack database users. Here are a few topics that I often see these folks having trouble with. Getting up to speed with these topics can eliminate a bunch of frustration early on in your building process.

Get a free Knack trial account here:

If you are a fan of building great apps with Knack, please click the Subscribe button to join my channel, and ring the bell to receive notices on all my new instructional videos. Thanks!

Full Transcript

hey folks uh dave parish here with knack

builders doing

another uh

another topic for you guys if you could

make sure you subscribe to this channel

or like the video if you find some value

in it here's today's topic


newbie mistakes when dealing with max

i do a lot of training

uh for new folks

that are

they try they start trying to build and

they're just confused and hired me to

sort of get them over a hump and these

are some common things

that i see a lot


that if you have them if you understand

them things are going to go a lot

smoother so i'll be back in a moment

to uh to go through those thanks


okay let's jump into this

five newbie mistakes


first one

is when you have connected objects

what direction should those this is

probably the biggest one

um let me give you an example here

here's a simple this is one of their

template things but we have customers

and we have invoices

these are related to one another

one customer

can have many invoices that makes sense

the relationship is one-to-many

learn that you're going to use it a lot

or a parent child

the direction you want

this connection is you wanna you want it

to initiate in the invoices


if we go to invoices

the child record almost always should



the connection that means the field that

connects these together


resides in the child the invoice and an

easy way to think of it too is when

you're looking at


child record you want to be able to see

whose customer that is you could do this


the customer but it'd get

it get weird it actually works but you'd

have a

you'd have a the connection thing would

have um

a bunch of customers or a bunch of

invoices in it all grouped together in

one field it just it doesn't make sense

and if it was recited in customer

you wouldn't be able to see what


uh or what customer you just make sure

we have an invoice this is one of these

line items you can see who the customer

is um i think i have another video on

this on most of these topics have other


uh let's see what the next one is

display field

this one display field

is right here if you go to

any object

you click next to its name


display field

what this means


whatever you set you can set any of the

fields as the display field it is what

is going to show up

in the connected record i just had that


or the the customer invoice thing

the customer's

name shows up in the child record for

the invoice that is what will be

displayed and depending on what order

you do this and that defaults to like

whatever this is called invoice name

uh select what you want and sometimes

too if you need more information like


you wanted to know i don't know the id

and the customer you wanted them

displayed in the same field you can make


text formula

that combines those two and you can set

that as as the

uh display field

now again i have another video on that

let's see what's next

parent versus child

this is meaning what data should reside

where and i'm going to give you this

example here's a big app but we have

literally parents and child we have


and we have their children right here

and here's just i'm gonna this is

sort of a big topic but here's an


and i think even on this one we


or when i was first given the data


children had for example

their address we want to know the

child's address well

uh in this case the parents address is

the child's address

and there isn't really an exception to


so we don't need


a field in the child

for their address

because we're going to capture it

in the

in the parents


it will always be available for that


so when you're looking at your data and

again one-to-many's are a good thing any

data that's inherent to the parent and

it's always going to be that it may

change but it's still only related to

the parent


doesn't need to be in the

child record uh think through your data

and that takes a little while to get

used to before you recognize really

quickly here's where this needs to be

and here's where that needs to be

let's see what the next one is

logged in views

this is really powerful for knack uh

and this takes a little bit getting used

to too

uh here's an example

this is a logged in view this is when a

customer or someone logs in you only or

you only want to see their stuff it

could be

i don't know leads assigned to sales

people or

service requests re assigned to a

technician whatever


first of all here's this is already

built but here's an example

um let's just add one

and this that makes this easy but you

still gotta understand it let's add a


i want to add a table of services right

here is where it asks you don't just

don't flip through this all services

that will show everything service this

would be more for an admin side wants to

see all of them you want to select

services connected to the logged in

customer and if you have more

than one connection it's going to give

you multiple options sometimes those can

be confusing but think it through

and if you're having a problem of how

things are

displayed you're like ah this isn't

working right always do this this is the

first thing you got to do in that

or engage whatever you want to look at

the page element

go to source

and the top thing look at what it is

this table displays service records

connected to the logged in customer

if you did not do that it might just say

this table displays service records

so do that


let's see the last one here

two must-have fields i have a video on

that too


but this you don't always use it but

when you need it

you need it and i use it a lot but

let's go to


okay let's go to this one um


date created

in every one of your objects put this in

there you're going to create a field

you're going to make its default current

date if you want time you can get time


you will know when that was created and

when you're troubleshooting it is

extremely helpful to know that and the

second thing you need is

a unique id

now in this case

we have

i think it's this number

every child has and the school's already

assigned a unique id number


this comes and if you don't have

data that already has a unique id

set an auto increment that has an auto

increment field to just start to one two

three four for every record

um when you're troubleshooting this

helps you


identify a record very quickly instead

of saying well the one on this date and

then their name is this and this isn't

that no you just say go to number five

two three right


and also when your

batch or when you're importing

and especially when you're match

importing you need that's

that's not complicated but you got to

know what you're doing but it's very

useful tool

and to use it you have to have a unique

id and

having a unique id from the get go is




that's what i got today i hope that was

somewhat useful um i probably could come

up with another list for another video

but those are the ones i thought for

this one thanks folks

26 views0 comments
bottom of page