Forum Discussion

EmberKrumwied's avatar
EmberKrumwied
Qrew Captain
11 months ago

Bulk create child records from selection list

Looking for a way to help users customize child related tasks when creating a new parent record.

Nothing has been built quite yet but the basic structure would be to have a parent table Transactions which relates to a child table Tasks.  Each Transaction could have a dozen or more Tasks.  To aid the user in not having to create each Task for each new Transaction, I was thinking I could present to the user a "list" of available Tasks that they could select.  Then when the parent record was saved, each of the selected Tasks would be created as new records in the related child table (linked, of course, to the new created parent record).

I'm thinking, to start, I will need some kind of field on the parent record which would display the list of available Tasks.  I would envision that this field would only be visible when the record is being created and hidden all other times.

Once the Tasks have been selected I would need some way of translating each selection into its own child record which relates to the parent record.

Does this sound possible?  Is there a different/better way to approach this?



------------------------------
Ember
------------------------------
  • Just to close this loop. I did go with the copy master and detail option.  For this instance I modified it so that just the child records would be created as opposed to both the parent and child records.  This setup should meet our needs as the need for the 30+ child records isn't a given when a new parent record is created.  This keeps my app free of extraneous records that may never get populated.  The user will be able to select child records that aren't applicable but still allow for additional ones as needed. 

    As a bonus, I configured the parent record to hide the "copy child records" button if any child records are already created. But, if for whatever reason, they delete all the child records, they will see the button again to re-add.

    Happy with the solution.

  • Just a thought. Would it be a better user experience to Auto create all the children then the user can immediately go in and just delete the ones they don't want?  



    ------------------------------
    Mark Shnier (Your Quickbase Coach)
    mark.shnier@gmail.com
    ------------------------------
    • EmberKrumwied's avatar
      EmberKrumwied
      Qrew Captain

      Really appreciate your quick response!  I hadn't thought of that option, I don't see why not.  Would I use pipelines to auto create the child records?  Is there any documentation you could point me to so I could try and build this suggestion?



      ------------------------------
      Ember
      ------------------------------
  • Lets answer your first question: 

    Yes - you could have a multi select that allows you to create children records. This method though would entail using either webhooks or Pipeline to convert that multi select value into an import format that either the webhook or pipeline would import into your tasks table. If that's your desired route I can provide more detail.

    The other options I would suggest are: 

    1. Create Task templates an have your users pick which templates they want. This entails a table for templates and template tasks - and your users pick from a dropdown of templates which they want to use. Then a pipeline can copy the tasks for that template over to your transaction in bulk.
    2. Have a list of tasks for your transaction and create ALL of them for each new transaction. You would have a pipeline just bulk import the same set of tasks every time a new transaction is created. Then - your users can view the tasks that were created and check a box to 'remove' that task. This is the same as your idea in reverse where you start with all of them but then remove what you don't want.



    ------------------------------
    Chayce Duncan
    ------------------------------
    • EmberKrumwied's avatar
      EmberKrumwied
      Qrew Captain

      Thank you too Chayce for the quick response.  I hadn't thought of going from creating all possible tasks and then letting the user delete unwanted ones.  Appreciate the response.



      ------------------------------
      Ember
      ------------------------------
      • MarkShnier__You's avatar
        MarkShnier__You
        Icon for Qrew Legend rankQrew Legend

        Ember,

        There are several ways for you to create these children so I will explain an additional one which has the advantage of being most simple stupid.

        If you have a special Template Project which has all your standard tasks, then you cvan use the built in Quickbase "wizard", located in app Management, then Copy Master and Detail.

        It will allow you to create a button which will import children form your designated template project into the project you are on.  Using a button is a better user experience than a pipeline because the user simply pushes a button and then the children appear instantly. 

        But of course it's also possible to do a pipeline that automatically creates the children once the project is saved. They'll be a delay of a few seconds until the children are created, maybe three seconds or so so the user would need to refresh the parent record to see the children.   With the pipeline, it will need a source of where to copy the children from. That could be from a special Template Project record which has the standard children, or else a separate table of template children. Then as Chayce suggested if you get into the nuances that you want the user to select which set of template test they want according to the project type then you would have your template children table records be tagged with what project type they matched to and then the pipeline would filter on just those task types.



        ------------------------------
        Mark Shnier (Your Quickbase Coach)
        mark.shnier@gmail.com
        ------------------------------
  • Just to close this loop. I did go with the copy master and detail option.  For this instance I modified it so that just the child records would be created as opposed to both the parent and child records.  This setup should meet our needs as the need for the 30+ child records isn't a given when a new parent record is created.  This keeps my app free of extraneous records that may never get populated.  The user will be able to select child records that aren't applicable but still allow for additional ones as needed. 

    As a bonus, I configured the parent record to hide the "copy child records" button if any child records are already created. But, if for whatever reason, they delete all the child records, they will see the button again to re-add.

    Happy with the solution.

    • HunterB's avatar
      HunterB
      Qrew Cadet

      Could you provide details as to how you modified the copy master and detail option to only copy the child records?

      • MarkShnier__You's avatar
        MarkShnier__You
        Icon for Qrew Legend rankQrew Legend

        There is a tool in the app properties settings to help create the button.  You can set if you want to create. New Parent or import records into an existing parent.

         

        if you want to post some existing code, we can help you make the modifications to it