• Project: SamePage

  • Status: Active

  • Priority: 3

  • Scratch Pad

    • Links used in testing

      • Testing/Example SamePage Project

      • Testing/Example In Progress SamePage Project

      • task One off for SamePage April 11th, 2023

      • Example one-off task

        • Owner: Chris

        • Due Date: April 13th, 2023

        • Client: SamePage

        • Project: Task

        • Notes:

    • %DEPLOYSITE% Outputted new page at Reports/SourceTech/04-17-23.

  • Deliverable

    • SmartBlock Report (TESTING)

      • <%SET:client,<%INPUT:For which client?,<%QUERYBUILDER:Vd7lthEJF,{Page}%>,SamePage%>%> <%NOBLOCKOUTPUT%>

      • <%IFVAR:client,/.+/%><%SET:webpage,Reports/<%GET:client%>/<%DATE:today,MM-dd-yy%>%> <%SMARTBLOCK:Generate Client Report (TESTING),<%GET:webpage%>%> <%NOBLOCKOUTPUT%>

      • <%IFVAR:ago%><%EXIT%>

      • <%IFVAR:client,/.+/%><%SET:deploy,<%INPUT:Deploy Website?,yes,no%>%><%NOBLOCKOUTPUT%>

      • <%IFVAR:deploy,yes%><%DEPLOYSITE%>Outputted new page at <%TAG:<%GET:webpage%>%> & deployed website.

      • <%IFNOTVAR:deploy,yes%>Outputted new page at <%TAG:<%GET:webpage%>%>.

    • SmartBlock Generate Client Report (TESTING)<%HIDE%>

      • <%IFVAR:client%> <%SET:client,<%INPUT:For which client?,<%QUERYBUILDER:ihBF43neC,{text}%>%>%> <%IFVAR:client%><%EXIT%> <%NOBLOCKOUTPUT%>

      • <%SET:ago,<%INPUT:How many days since today?%>%> <%NOBLOCKOUTPUT%>

      • <%IFVAR:ago%><%EXIT%>

      • <%SET:start,<%DATE:<%GET:ago%> days ago,MMMM do, yyyy%>%> <%SET:startDate,<%TAG:<%GET:start%>%>%> <%SET:endDate,<%DATE:today%>%> <%NOBLOCKOUTPUT%>

      • Report <%TAG:Reports/%><%GET:client%>

      • <%GET:client%>

        • From <%GET:startDate%> to <%GET:endDate%>

        • <%IFCHILDREN%>Completed Projects:

          • <%QUERYBUILDER:Completed Projects Report,my-PVFQCN,client=client,start=start%><%SKIPIFEMPTY%>

        • <%IFCHILDREN%>In-Progress Projects:

          • <%QUERYBUILDER:In-Progress Projects Report,IpEN-J5hY,client=client,start=start%><%SKIPIFEMPTY%>

        • <%IFCHILDREN%>Items to Review:

          • <%QUERYBUILDER:Questions,Ki6DjUqLb,client=client%><%SKIPIFEMPTY%>

        • <%IFCHILDREN%>One Off Tasks:

          • <%QUERYBUILDER:One-off Tasks,78369X7Ym,client=client,start=start%><%SKIPIFEMPTY%>

        • <%IFCHILDREN%>Planned Projects:

          • <%QUERYBUILDER:Planned Projects,AfZCFQ1uH,client=client,start=start%><%SKIPIFEMPTY%>

    • SmartBlock Mark Completed (TESTING) <%HIDE%>

      • <%TRIGGERREF:block%> <%NOBLOCKOUTPUT%>

      • <%SMARTBLOCK:Mark Date Completed (TESTING),block%><%NOBLOCKOUTPUT%>

    • SmartBlock Mark Date Completed (TESTING)

      • Date Completed: <%DATE:today%>

    • Formats

      • <%TAG:<%GET:project%>%>

        • <%QUERYBUILDER:Dated Tasks,78369X7Ym,title=project,start=start%><%SKIPIFEMPTY%>

        • <%QUERYBUILDER:Referenced Done Tasks For Project,78369X7Ym,project=project,start=start%><%SKIPIFEMPTY%>

      • <%QUERYBUILDER:Done Tasks New 2,78369X7Ym,title=project%><%SKIPIFEMPTY%>

      • ((<%GET:uid%>))

      • <%TAG:<%GET:project%>%>

        • <%QUERYBUILDER:Dated Tasks,78369X7Ym,title=project,start=start%><%SKIPIFEMPTY%>

        • <%QUERYBUILDER:Referenced Done Tasks For Project,78369X7Ym,project=project,start=start%><%SKIPIFEMPTY%>

      • <%TAG:<%GET:project%>%>

        • <%QUERYBUILDER:Question Todos,78369X7Ym,project=project%><%SKIPIFEMPTY%>

      • <%TAG:<%GET:project%>%>

    • Queries

      • Completed Projects Report

          • results

            • views

              • Project

                • link

              • Description

                • plain

          • scratch

            • custom

            • selections

              • node

                • Project

              • Description

                • Description

            • conditions

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • For Client

              • clause

                • source

                  • For Client

                • Relation

                  • references title

                • target

                  • :in client

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • Date Completed

              • clause

                • source

                  • Date Completed

                • Relation

                  • references

                • target

                  • date

              • clause

                • source

                  • date

                • Relation

                  • titled before

                • target

                  • today

              • clause

                • source

                  • date

                • Relation

                  • titled after

                • target

                  • :in start

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • Status

              • clause

                • source

                  • Status

                • Relation

                  • references title

                • target

                  • Complete

            • return

              • node

      • Referenced Done Tasks For Project

          • results

          • scratch

            • custom

            • selections

            • conditions

              • clause

                • source

                  • node

                • Relation

                  • references title

                • target

                  • DONE

              • clause

                • source

                  • node

                • Relation

                  • references

                • target

                  • date

              • clause

                • source

                  • date

                • Relation

                  • titled before

                • target

                  • today

              • clause

                • source

                  • date

                • Relation

                  • titled after

                • target

                  • :in start

              • clause

                • source

                  • node

                • Relation

                  • has ancestor

                • target

                  • parent

              • clause

                • source

                  • parent

                • Relation

                  • references title

                • target

                  • :in project

            • return

              • node

      • Done Tasks

          • results

            • sorts

              • text

                • false

          • scratch

            • custom

            • selections

            • conditions

              • clause

                • source

                  • node

                • Relation

                  • references title

                • target

                  • DONE

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • Project

              • clause

                • source

                  • Project

                • Relation

                  • references title

                • target

                  • :in title

            • return

              • node

      • In-Progress Projects Report

          • results

            • views

              • Project

                • link

              • Description

                • plain

          • scratch

            • custom

            • selections

              • node

                • Project

              • Description

                • Description

            • conditions

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • For Client

              • clause

                • source

                  • For Client

                • Relation

                  • references title

                • target

                  • :in client

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • Status

              • clause

                • source

                  • Status

                • Relation

                  • references

                • target

                  • status

              • clause

                • source

                  • status

                • Relation

                  • has child

                • target

                  • metadata

              • clause

                • source

                  • metadata

                • Relation

                  • references title

                • target

                  • In Progress

            • return

              • node

      • Dated Tasks for Project

          • results

          • scratch

            • custom

            • selections

            • conditions

              • clause

                • source

                  • node

                • Relation

                  • is in page with title

                • target

                  • :in title

              • clause

                • source

                  • node

                • Relation

                  • references title

                • target

                  • DONE

              • clause

                • source

                  • node

                • Relation

                  • references

                • target

                  • date

              • clause

                • source

                  • date

                • Relation

                  • titled before

                • target

                  • today

              • clause

                • source

                  • date

                • Relation

                  • titled after

                • target

                  • :in start

            • return

              • node

      • One-off Tasks

          • results

          • scratch

            • custom

            • selections

            • conditions

              • clause

                • source

                  • node

                • Relation

                  • references title

                • target

                  • DONE

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • Client

              • clause

                • source

                  • Client

                • Relation

                  • references title

                • target

                  • :in client

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • Due Date

              • clause

                • source

                  • Due Date

                • Relation

                  • references

                • target

                  • date

              • clause

                • source

                  • date

                • Relation

                  • titled before

                • target

                  • today

              • clause

                • source

                  • date

                • Relation

                  • titled after

                • target

                  • :in start

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • Project

              • clause

                • source

                  • Project

                • Relation

                  • references title

                • target

                  • Task

            • return

              • node

          • editing

      • Questions

          • results

          • scratch

            • custom

            • selections

              • node

                • Project

            • conditions

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • For Client

              • clause

                • source

                  • For Client

                • Relation

                  • references title

                • target

                  • :in client

              • clause

                • source

                  • node

                • Relation

                  • has descendant

                • target

                  • questions

              • clause

                • source

                  • questions

                • Relation

                  • references title

                • target

                  • Questions

            • return

              • node

      • Question Todos

          • results

          • scratch

            • custom

            • selections

            • conditions

              • clause

                • source

                  • node

                • Relation

                  • references title

                • target

                  • TODO

              • clause

                • source

                  • node

                • Relation

                  • has ancestor

                • target

                  • questions

              • clause

                • source

                  • questions

                • Relation

                  • references title

                • target

                  • Questions

              • clause

                • source

                  • node

                • Relation

                  • is in page with title

                • target

                  • :in project

            • return

              • node

      • Planned Projects Report

          • results

          • scratch

            • custom

            • selections

              • node

                • Project

            • conditions

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • For Client

              • clause

                • source

                  • For Client

                • Relation

                  • references title

                • target

                  • :in client

              • clause

                • source

                  • node

                • Relation

                  • has attribute

                • target

                  • Status

              • clause

                • source

                  • Status

                • Relation

                  • references title

                • target

                  • Planned

            • return

              • node

  • Update for April 6th, 2023

    • Video

    • Link to test client page

    • Comments

      • The way we can tell if a project is In-Progress is by the Status attribute, of which there are 4:

        1. Future

        2. In-Progress

        3. Priority

        4. Complete

      • The only curve-ball here is Priority. If a project status is either In-Progress or Priority, any tasks completed in the specified date range should output under the In-Progress section of the report.

        • Likewise if a project is marked Complete, the tasks completed should show up in the Completed section

      • Using the Status attribute to guide where project and tasks should output is a better (more accurate) marker than the Date Completed attribute

        • The Date Completed attribute is actually blank for any non-complete project. It gets auto-filled using the Archive Project custom workflow

  • Update for April 10th, 2023

    • Video

    • tl;dw

      • Working on Block formats for QUERYBUILDER command

      • Starting to inline <%CUSTOMCLIENTREPORT%>

      • Command updated to look for In-Progress and Priority statuses

    • Comments

      • April 11th, 2023

        • I understand the custom JS / Query in the current callback is outside the scope of the current SB/QB abilities, but I don't follow how the Custom Report workflow relates to this update in Query Builder. I also don't really follow what the update is QB is doing.

  • Update for April 11th, 2023

    • Video

    • tl:dw

      • Working on query inputs - Single query builder instance that could be reused across multiple values for a given field

        • Ex 1: Single Query Builder instance for generate report smartblock, but use the variable to get only the projects related to that client

        • Ex 2: This will enable having a single Query Builder instance for a messaging inbox, needing only to swap out the value for each person

    • Comments

  • Update for April 12th, 2023

    • Video

    • tl;dw

      • Check out the block tree. Using the block formatting from two days ago, we can now create a more expressive output for each result from query builder's output.

      • Using the inputs work from yesterday and today, we can reuse just one query builder table for projects instead of adding one for each new client

      • I think these are all the changes needed to get rid of <%CUSTOMCLIENTREPORT%> - will be able to do so tomorrow.

    • Comments

  • Update for April 13th, 2023

    • Video

    • Summary

      • We have a final Deliverable here

      • Changes in under review in Roam Depot - will push to get it merged today/tm

    • Comments

      • This looks great. There's one item that I failed to bring up at the start, and that's a one-off task:

        • Example one-off task April 18th, 2023

          • Owner: Chris

          • Due Date: April 14th, 2023

          • Client: AllParts Medical

          • Project: Task

          • Notes:

  • Update for April 14th, 2023

    • Video

      • See here

    • Summary

      • QB changes for report should be live and one off tasks done

    • Comments

  • Update for April 16th, 2023

    • Video

    • Summary

      • Added commands that will skip the heading if empty

      • Going to look tomorrow into why some projects aren't getting included

      • Just add the < > to %DEPLOYSITE% to have it deploy again

    • Comments

      • I want to make sure we're on the same page regarding you,r projects feedback: it's not that projects "aren't getting included", it's that too many are.

        • Just to be clear, only projects with the proper Status, and that have had a task completed in the given date range should be included

  • Update for April 17th, 2023

    • Video

    • Summary

      • Report updated to suck in proper in-progress tasks - let me know if this is directionally correct so that we could apply to Complete + Questions

      • Slight process change, outlined here. Basically, Active are tasks to be reviewed by you, I by default will work on whatever is on top of the Backlog

      • Iterating on messages feedback tm

    • Comments

      • I just ran a sample report for SourceTech here and everything appears to be working fine. There are double checkbox inputs outputting on the static site page by I'm 99% that was just JS from me awhile back to try and get bullets to output as checked off tasks.

      • A couple of housekeeping things and I think we're ready to mark this Complete

        • Planned Projects

          • Most clients want insight on what projects are on-deck for the coming week. I'm thinking about a new status tag called Planned that could be used for this purpose.

          • Since our current project meta data setup doesn't have anything akin to project start date, I would say that we could simply set this up to grab project with a Planned status at the time the report is ran

        • External Reports

          • For most clients, this Roam-derived deliverables report coincides with links to some external performance reports (i.e. links to a Google Sheet or Data Studio). I would to be able to include those links directly in this report so the client has everything on one page. What would be your recommended way of handling that?

            • Manually type that section in before running deploy site?

            • Some sort of workflow that can capture pre-defined fields for report name and report link?

            • Something else entirely?

        • Organization of where these reports live on the web

          • As you can see here, the MarketHubb Reports page is an absolute mess.

            • How can we set up the tagging of these such that each client has a homepage / dashboard or sort (i.e .a page where only SourceTech report live)?

              • This is actually the first step in a much larger "Client Resources" page I want your help building out, which will involve reports as well as project updates, client questions, etc...

  • Update for April 20th, 2023

    • Video

    • Summary

      • Planned Projects - added a section for planned projects here

      • External Reports - We could use SmartBlock command to retrieve that data and insert it directly in the report you round it. See video for more details.

      • Site Organization - Each client already has a page in Roam. We just need to set up a filter in Static Site to deploy them all, then need to support the query builder component in the static site. See video for details.

    • Comments

  • Update for April 25th, 2023

    • Video

    • Summary

    • Comments

      • My fault for moving this to Complete status without fully testing, but there's some missing items I noticed today that need to be addressed:

        • Missing Completed Projects

          • I created dummy projects under the client MarketHubb here and than ran the new report workflow that generated a report here

          • I would have expected this project to show up under the "Completed" heading

        • Need conditionals for each step of the workflow

          • For this (and any other multi-step workflow), we really need to have <%IFVAR:%> conditionals setup to make sure that some value is passed before moving on to the next step

            • A lot of times I'll trigger a workflow by mistake or realize half-way through I need to abort

            • The way it's currently setup, the workflow keeps running even if I hit cancel on the first prompt

  • Update for April 26th, 2023

    • Video

    • Summary

      • Completed Projects weren't showing up bc of a previous comment saying projects without tasks should be skipped. Should now be showing

      • Proper ifvar's have been placed

    • Comments

      • Okay great on Completed.

      • Error in task meta data

        • I'm just bringing this to your attention, because I want to make sure this doesn't break anything:

          • The custom task workflow that I built and we've been using for the last few months had an error in it that I just noticed today. The value for the Project attribute was outputting as text and not a linked reference (see examples below). If the workflow you built is unaffected by this change, go ahead and disregard

          • Legacy task format

            • Task description (with project meta as plain text) May 1st, 2023

              • Owner: Chris

              • Due Date: April 28th, 2023

              • Client: AllParts Medical

              • Project: APM/Create page content for ultrasound probe parts and service

              • Notes:

          • Updated task format

            • Task description (with project meta as linked ref) May 1st, 2023

              • Owner: Chris

              • Due Date: April 27th, 2023

              • Client: AllParts Medical

              • Project: Archive/APM/Create page content for ultrasound probe parts and service

              • Notes:

          • One-off task May 1st, 2023

            • Owner: Chris

            • Due Date: April 30th, 2023

            • Client: AllParts Medical

            • Project: Task

            • Notes:

          • Future task May 1st, 2023

            • Owner: Chris

            • Due Date: April 30th, 2023

            • Client: AllParts Medical

            • Project: Future

            • Notes:

  • Update for April 29th, 2023

    • Video

    • Summary

    • Comments

  • Update for May 1st, 2023

    • Video

    • Summary

    • Comments

      • Tried to run a report for SourceTech today.

        • The first time I attempted the workflow, Chrome froze and I had to shut it down

        • The second attempt resulted in this page

        • The third attempt resulted in this page

  • Update for May 2nd, 2023

    • Video

    • Summary

      • Watched the Updated Task Workflow video - I believe this may affect workflows but won't know for sure until it's reported as an issue. If it is, I can run scripts on my end to tag all values next to Project:: attributes that are currently untagged.

      • Reviewed your comments from yesterday, noticed four problems

        • On the final attempt, noticed startDate and endDate. This now resolves to the dates correctly

        • On the final attempt, noticed missing projects. Not sure why that was, but I generated a new report today that seemed to work:

        • On the second attempt, noticed that the workflow didn't exit properly if a previous step was cancelled. This should be fixed

        • On the first attempt, noticed that the workflow is still really slow bc of all the heavy querying that needs to happen in the front end for this to happen. We have ongoing work to enable this in SamePage's backend, which could be prioritized if you want to create a separate task for it and move to near the top of the backlog. Know that all hangs should resolve eventually.

    • Comments

  • Update for May 6th, 2023

    • Video

    • Summary

    • Comments

      • We still have issues here with the Completed Projects not picking up tasks

        • On this report, this task should have been listed under this project

  • Update for May 8th, 2023

    • Video

    • Summary

      • Outputted new page at Reports/SourceTech/05-08-23.

      • Should now be grabbing tasks, and also ask if you'd like to deploy the website at the end or not.

      • Outstanding questions

        • Will the project always be a parent or a child attribute ?

        • Should older tasks be filtered out from the report in completed projects?

    • Comments

      • Not sure if I understood the comment @ 4:46 about needing to filter things out, video below explaining our current task system in more detail

  • Update for May 9th, 2023

  • Update for June 6th, 2023

    • Video

    • Summary

    • Comments

  • Update for June 7th, 2023

    • Video

    • Summary

      • Completed tasks now appear in completed projects.

      • Combine multiple clients in a single report -> split out into its own task and reprioritize

    • Comments