How do I navigate between a data entry form and editing a record in an embedded table.

  • 0
  • 1
  • Question
  • Updated 5 years ago
  • Answered

I launch to a child table form from a parent table through an "add activity" URL. Once in the child form, I also have an embedded table that lists all the activities. Users typically add a record and us "Save & Add Another" and all works fine. If they have to update, I'd like to be able to edit the record from the embedded table and when saved, return to a blank form to add a new activity. Instead, I return to a view and have to back out to the dashboard, click on my incident, and relaunch though "add activity" URL. How can I make toggling back and forth a better experience for my users?

Photo of Anne

Anne

  • 100 Points 100 badge 2x thumb

Posted 5 years ago

  • 0
  • 1
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 30,074 Points 20k badge 2x thumb
How many tables are involved in this workflow - two or three? It would be helpful if you explicitly named the tables and indicated their relationships and the exact sequence you want to process the records in. Also some screenshots would be helpful.

Once we understand your workflow we can build a workflow model and implement it in JavaScript:

Finite State Machine
http://www.jointjs.com/demos/fsa

Petri Net
http://www.jointjs.com/demos/pn

UML State Chart
http://www.jointjs.com/demos/umlsc

Discrete Events System Spec
http://www.jointjs.com/demos/devs
Photo of Anne

Anne

  • 100 Points 100 badge 2x thumb
There is a parent table called incident and a child table called incident timeline.  The incident may be something like "Broken Phone" and the incident timeline may have several activities listed to trouble shoot why the phone is broken.  How do I now attach screen shots?
Photo of Ⲇanom the ultimate (Dan Diebolt)

Ⲇanom the ultimate (Dan Diebolt), Champion

  • 30,074 Points 20k badge 2x thumb
> How do I now attach screen shots?

See screenshot attached.
Photo of Anne

Anne

  • 100 Points 100 badge 2x thumb
The initial screen look like the attached. Has a data entry form and a list of all previously entered activities. Typically I'm save and add another but at times, I want to edit a previously entered activity, I click on the pencil icon in the embedded table and the form populates with the current information. I now only have at the upper right corner of the screen, the save button. When I save, I launch to just a view of the activity record. Now I have to click several times to get back to my dashboard and reopen the incident and then add a new activity. If I click on the +New Activity button on the top right corner, I create an orphan record.

My desired outcome would be after I edit and existing record, to go back to my incident timeline table (the child) and be able to enter a new activity. Hope this is helpful - I apologize, I am not a very experienced programmer.
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 67,448 Points 50k badge 2x thumb
In the relationship between Incidents and Incident Timelines you will have a field call [Related Incident]. If you put that field on your Timeline activity record, that will be a hot link back to your Incident record.

Also, if there is a headline for the Incident record, like a text field which describes the incident like "broken Phone", you can bring that down a level as a lookup field and then edit the field properties for [related Incident] to use the Incident headline lookup field as its Proxy. I that case you would add that field to your form instead of related incident.


You should protect against creating orphan records by edit the User interface for each role to take away the Add Record button for records which should only be created by launching off a parent record.



Lastly, if part of your issue is that you end up on a grandchild record (ie an "activity") and need to hot link back to the Incident (which is two levels up), then post back and I can give you a way to do that.
Photo of Anne

Anne

  • 100 Points 100 badge 2x thumb
I don't think that solves my problem. My tables are linked by "Related Incident" but thinking along those lines, in my incident timeline (child table) I liked the embedded table based on "Detail ID#" thinking it would pop me back to a new data entry screen but that didn't seem to work. The record stored properly but the embedded table was blank.

I have learned that I can go up to the top left of the screen and hit the left arrow twice and I'll return back to my Incident Timeline form rather than my Incidents form but it still isn't as smooth an experience as I'd like for my users.

Any additional thoughts would be greatly appreciated.
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 67,448 Points 50k badge 2x thumb
Sorry,
I'm still not understanding the problem you are encountering and whether you are in Grid Edit mode or regular mode and where your navigation problem is.

I think that you will need to describe your desired workflow step by step methodically and let us know where its not to your liking.
Photo of Anne

Anne

  • 100 Points 100 badge 2x thumb
Below is a description of my workflow. Thank you VERY MUCH for trying to help me. I greatly appreciate your time and effort.

I have a parent table called "incidents" with a primary key of "Detail ID#." I have a child table called "incident timeline." My workflow is that when I have an incident, I have a form tied to my parent table (incidents) where I enter basic information about the incident. In that parent form, I have a report link to my child table (incident timeline). This is a button that when clicked, opens a form tied to my child table (incident timeline). I can enter information about actions taken to resolve the incident. In this form, I have also included an embedded table that shows all the previously entered actions. At the top is a blank data entry form, fill it out, hit save, it shows in the embedded table. Attached is a screen shot called Incident Timeline Screen.

The incident timeline is very fast paced and needs to be time stamped. So, my workflow is to enter information immediately and at times, go back to the record and update the information. Going back to the "Broken Phone" example, I may page Verizon technical support to join a conference bridge. I enter that information and hit save. I also communicate with the user to step them through basic resolution steps. Such as turn off phone, take out battery, return battery, turn on phone. I enter that information and hit "save & add another." The "SAVE" button option returns me to the parent table entry screen and the "Save & add another" returns me to the child table entry screen. I now have 2 records appearing in the embedded table that displays under the data entry form for my child (incident timeline) table.

When Verizon is engaged on the conference bridge, I want to go back and update the record "Page Verizon." What I'm doing now is using the embedded table view, clicking on the pencil associated with the record to edit the record. The information populates the form above the record and I can make changes to indicate, for example, that we had to page Verizon 5 times and it took them 3 hours to respond. My only option now is to "save." See screen shot "Incident Timeline Modification."


Here is where it gets messy.


When I hit save, I get a view of the record with the new information entered as well as the wait time of 3 hours which is a calculated field. See the screen shot "Incident Timeline Modification After Save."

  • My desired state would be to return to the Incident Timeline form - ready to add a new record or modify an existing record. The view would be the "Incident Timeline Screen" screen shot.
    • I can hit the back arrow 3 times and return to the desired screen. See "Options to Go Back" and it's circled in red.

Clicking "New Activity" launches me into outer space - blank data entry screen and a blank embedded table although I know there are 3 activities already loaded. See "Incident Timeline Outer Space."

I can also go back to my main dashboard, open the incident form and launch again into the incident timeline form.

Thanks again and apologize for the length!
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 67,448 Points 50k badge 2x thumb
Here is what I can suggest based on this forum.

In general after you save you can either return to a Parent record or stick on the current record.  That is controlled by the code in the ADD Child button.  If the code ends with & "&z=" & Rurl()
then the button will return to the Parent record on Save.  Otherwise it will stick on the current record.

If you want to return to somewhere else after saving then what I suggested above is the way to go.  Just make your own hyperlink to go to wherever you want.

"Lastly, if part of your issue is that you end up on a grandchild record (ie an "activity") and need to hot link back to the Incident (which is two levels up), then post back and I can give you a way to do that."

Here is the general format of a formula text field with html enabled (checkbox)

var text URL = urlroot() & "db/" & [_DBID_insert the table name you want to go to from the advanced properties of the Table settings] & "?a=dr&rid=" & totext([insert the field here which has the record ID of the record you want to go to]);

var text Words = "Incident Timeline " & totext([record id# of the record you want to go to])


"<a href=" & $URL & ">" & $Words & "</a>"
Photo of Anne

Anne

  • 100 Points 100 badge 2x thumb
I appreciate your patience and assistance. But I'm not making the leap between the "add" button which is a formula URL field and evoking the icon that looks like a pencil to the far left on a record in an embedded form and having the save button behave as if it is a save and add new (an option available during regular data entry but not available when saving an update).

I'm not a coder, but I found this example on the web for a save and resume option...

"<a class='Vibrant Success' onclick=$('#RedirectURL').val(document.location.href.replace(/&rl=[a-z0-9]*/,''));$('[name=rl]').val('');$('#saveButton').trigger('click'); href='#'>Save & Resume</a>"


Works well - but it doesn't clear the form (keeps the data you were updating) so you can add a new activity into the timeline. Can this be expanded to do that? If yes, how?
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 67,448 Points 50k badge 2x thumb
I think that I would have to have a look at your app  on a GotoMeeting to understand your needs.  You can contact me via the information in my Profile.