Platform Overview
Editing Knack
Knack is an online platform that lets you build custom business applications without writing code. We manage a growing suite of business applications built with Knack.
When to Use Knack
When users want to have a flexible cloud database
Public/Log-in accounts
Page restrictions: user roles, active/inactive users
Versatility with form entry, table entry
Email notifications
Minimum Project Requirements
Application page in the ATD Applications
Form Fields:
Application Name
: what the name of the application is
Application Description
: explanation of what application is
Application Class
: what kind of application is it
Enterprise
Device-Specific Firmware/Software
ArcGIS Online Feature Service
ArcGIS Online Web App
Database Server
Database - Other
Web Application - Other
Computer File
Knack Application
Notes
: any important notes about the application
Vendor
: vendor that application is made by
CSDC
City of Austin
Esri
Fulcrum
Gridsmart
IBM
KImley-Horn
Knack
Microsoft
Motorola
None
Open Source
Post Oak Traffic
Socrata
Wavetronix
URL
: link to access application
City of Austin Department Owner
: who application owner is
ATD
CTM
Other
Best Practices
Project Documentation
Code Documentation
Code Versioning
Data Retention Policies As per Knack, for customers with a Plus plan, record versions are retained for 3 months.
Backups
Database records - retained for 7 days and backed up at 3am.
App Structure - retained for 7 days and backed up at 2 am and 2pm.
Attachment Size Files larger than 250 MB cannot be attached to a record. If there is a need to attach a file larger than 250 MB, please contact the administrator for assistance.
Attachments When designing an application, an attachment table is preferred to an attachment field, to facilitate multiple attachments.
Password Control
Knack custom password settings
ADFS
Style Guide
Knackpy
Knackpy is our Python client for interacting with Knack applications. We use it to integrate Knack with other software systems.
ADFS Configuration
See here
Current Supported Applications
AMD Data Tracker
ATD Visitor Sign-In
ATD Forms
DTS | Data and Technology Services Portal
Finance and Purchasing
HR | Human Resources
RPP | Residential Parking Permits Portal
ROW | Right of Way Portal
Parking Enterprise Portal
SMO | Shared Mobility Operations
Street Banners Portal
Signs and Markings
TDS | Transportation Development Services
VZA | Vision Zero in Action
Knack Change Log
Whenever you make changes to a production Knack application, log those changes here. To do so: 1. Go to the change log (it's available via the Admin menu): Change Log/ 2. Click Add Entry 3. Select the name of the app that you edited, along with a detailed description of the changes. Links to new modules and service requests are welcome. 4. In the "tags" field, enter at least one keyword that is relevant to the change you made 5. Click Submit to save the entry.
Knack Editing Calendar
Prior to editing Knack applications, it's important to log your work, and schedule, in the Knack Editing Calendar. This helps those who'll be using the application of potential changes to the system, while using the system. If major changes are happening, the user may want to avoid the app until the maintenance/work is complete. Here are the steps: 1. Go to DTS Portal 2. Select any of the button options and 'Sign in' 3. Choose 'Admin' menu located in the banner 4. Select 'Knack Calendar' from the list of values 5. Select the 'Date/Time' to reflect your work (This will prompt more menu items) 6. Fill in all required information 7. Select 'Submit'
Object Creation
Always place derived field after source fields, for example a text formula field or equation field should be placed lower than the source field.
To avoid corrupted fields, don't overwrite text formula or equation fields. Start a new field when trying an alternative approach.
If calculated fields are not refreshing as expected, create a dummy field and run an update all records process with that dummy field (for example, update a dummy date field to current date) to initiate the refresh process.
Training Users
Recruit someone who has not been involved in the process so far to do UAT.
Ask product owner to keep builder/ product manager in the loop for all app related communication to their team.
Aim for a user training plan that involves users at different user levels.
Communicate with product owner how user testing and training will help with application adoption.
Using Tasks
Tasks take a fairly long time to run especially with some filter parameters.
The task runs through each record to see if it needs to be processed.
Need to research if there is a way to narrow down the records to be processed before the task can start. It takes about half an hour for one task to go through 660 records.
Tasks should be run after hours since running a task might slow the whole app down for users.
Last updated