[Case study] Making a gorgeous printable easy to set up report for a real client

Here’s something different from me: a glimpse into some of the real work I did for a real client.

Fine folks @Ajay_Parasrampuria @Hirdesh_Singhal from Business Design Lab let me share the private piece of work I did for them (normally my work is NDA’d and I have nothing to show). This is not a paid promotion: I was only paid for the work, not to record the video or post it here. This is my own intention to share and a win-win for everyone.

In a nutshell, the requirements
  • Take a form entry from Paperform

    • A form has conditional logic, so a report may look differently (have different fields) for different submissions.

    • It’s not finalized yet — fields may change, so ideally my setup should be flexible enough to accommodate for form updates.

  • Make a report in Coda to share with end client.

  • A report has manual steps to it:

    • A mix of form replies and write-in fields

    • Every response should be editable, i.e. not formulas

    • A need to select only a few items (rows) and delete all the other in such way that the user can never access those other rows (i.e. only pick a few rows to share out of an otherwise private table)

  • Ideally it should be printable, ideally with timely page breaks

  • Ideally use QuickWork instead of Integromat/Zapier to integrate stuff together. (Quickwork didn’t have a Coda plugin at the moment)

  • As said before, there is a library of data that should be kept private. Whoever finalizes the report should be able to only pick a subset of items from the library and delete the rest. The user shouldn’t be able to access those deleted items (i.e. not be able to access doc history)

The assignment took me much longer to complete than estimated, but that’s because I tried to approach it creatively and actually construct some great UX. Here’s what I came up with — you be the judge :wink:

Some trickery featured:

  • Using Detail views everywhere — to force page breaks.

  • Calling Coda API directly to copy a doc to a specific folder (Zapier Copy Doc action doesn’t let you choose another folder) and to share a doc programmatically.

  • Comparing a captured doc ID with thisDocument.Url().EndsWith() to figure out which copy of the doc we use, to show a different footer (instructions or copyright, see video ending).

  • Using formatted templates extensively.

  • Dumping all form replies in bulk into Coda, then parsing on Coda side.

and some more — please subscribe to codatricks.com where all of those will eventually end up.


Man, don’t you wish you had the new forms feature for this?

We miss it the most! Especially ability to build conversational forms with multiple branching

Well @Connor_McCormick, I realize that Coda forms won’t be on par with Paperform / Typeform / etc for a while yet. I mean features like form beautification (content between sections), multi-page flow and others.

Besides, in this use case we need one doc per submission (to share privately with the person who submitted the form), whereas Coda will most likely only support collecting data into a single table.

BTW since we’re talking about conversational onboarding, let me remind you of my earlier doc and my first ever thread in this Community :slight_smile:

1 Like