Ability to create and modify checklists as a custom field inside any entity

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • telecastg
    Active Community Member
    • Jun 2018
    • 907

    Ability to create and modify checklists as a custom field inside any entity

    In our EspoCRM application we have an entity "Service Task" that describes a customer request and I was looking for a way to integrate a micro "to do list" into this entity as a field and thus created a custom type of field that combines the advantages of the array field type (add or delete items on the fly) and the checklist field type (mark items as done/not done or any other boolean condition) which works perfectly for this purpose.

    For those interested, it is packaged as a free extension and can be downloaded here: https://github.com/telecastg/dynamic...st-for-espocrm

    To install:
    1) Download the zip file
    2) Go to Administration >> Extensions click "Browse" to select the zip file and then click "Upload"
    3) Click "Install" after the zip file has been uploaded
    4) Rebuild EspoCRM

    To add as new field to any entity:
    1) Go to Administration >> Entity Manager >> {{your entity}} and click "Add Field"
    2) Select type "Dynamic Checklist" and enter the desired parameters (name, label, etc)

    Cheers
  • item
    Active Community Member
    • Mar 2017
    • 1476

    #2
    Hello Telecastg,
    nice.. thanks for this... but maybe a ehancement :

    data stored in database is : ["A;;1","B;;1","C;;1"]

    it's not possible to store in Json format ? on developpement (php code) is more easy like so :

    {"A":"1","B":"1"}

    And so, we can "search" in these field, actually can't be done.
    so we respect espoCRM intelligency

    Regards
    Last edited by item; 12-16-2019, 12:01 PM.
    If you could give the project a star on GitHub. EspoCrm believe our work truly deserves more recognition. Thanks.​

    Comment

    • telecastg
      Active Community Member
      • Jun 2018
      • 907

      #3
      Good suggestion item data storage is an array of json objects, extension version is 1.0.1 now :-)

      EspoCRM extension that adds a custom type field which allows to dynamically create a checklist inside any EspoCRM entity - File not found · telecastg/dynamic-checklist-for-espocrm
      Last edited by telecastg; 12-17-2019, 04:01 PM.

      Comment

      • blueprint
        Active Community Member
        • Jan 2019
        • 223

        #4
        telecastg This is great! Thanks

        Comment

        • item
          Active Community Member
          • Mar 2017
          • 1476

          #5
          Hello Telecastg,
          Still same....we can't make a search on this field ... really it's a must have.
          And you can add more than one the same value
          And you click X for remove one item, it's not removed from interface .. upon update.

          maybe blueprint can ehance this .. i have no skill in front-end :s

          Regards
          Last edited by item; 12-17-2019, 11:39 AM.
          If you could give the project a star on GitHub. EspoCrm believe our work truly deserves more recognition. Thanks.​

          Comment

          • blueprint
            Active Community Member
            • Jan 2019
            • 223

            #6
            item This is just my two pence but I'm not really sure how the search feature would work on a field such as this.

            The search would have to load up all of the options against all of the dynamic-checklist fields within a specified Entity and then display them in a (potentially huge) list.

            Comment

            • item
              Active Community Member
              • Mar 2017
              • 1476

              #7
              Hello blueprint , outofbox checklist .. can be searched : ["A","B"]

              maybe Yuri can adapt this, it's a wonderfull extension.. thanks to telecastg ...
              we need absolutly preserve the "core intelligency" of espoCRM.. so if this contribution of telecastg is "core ready" .. it's perfect.

              It's too my 1 cents pence..
              And i don't have skill for this ..

              Regards
              If you could give the project a star on GitHub. EspoCrm believe our work truly deserves more recognition. Thanks.​

              Comment

              • telecastg
                Active Community Member
                • Jun 2018
                • 907

                #8
                Hello item working on the duplicate value and item remove bugs, had underestimated the changes needed when dealing with json objects instead of a simple string, but it will be done soon I hope.

                With regards to search, I haven't looked into it because I have no use for that capability for this module in my application but if you help guiding me to the scripts that handle the search in the front end and back end I will look into it if I have time also.
                Last edited by telecastg; 12-17-2019, 09:15 PM.

                Comment

                • item
                  Active Community Member
                  • Mar 2017
                  • 1476

                  #9
                  Hello telecastg,

                  espoCRM is the best CRM i have never see.. and your extension is wonderfull ..
                  i think it's not hard ...to your extension to be "incorporate" in espoCRM outOfBox... i think just the way of data are stored in database
                  sample in database :
                  {"assignedUserId":"1","assignedUserName":"Admin "}
                  {"eventType":"Meeting","eventId":"5db6bff6beded 92f 4","inviteeId":"5d5d8b0252e467552","inviteeType ":" User","link":"users"}
                  {"statusValue":"New","statusField":"status","st atu sStyle":"default"}

                  without [ ] (bracket).. just look database "note", "uniqueId", "preferences", "integration".... entity,

                  sorry, i have no skill in front-end .. (my next step to learn)... but i think .. if you store data without [ ] .. it's ok i think

                  Thanks for all

                  PS : i have modified in database the field to this : {"A":"1", "B":"0"} . ... and search work.. but on label :s ... so we return on blueprint 2 cents pence

                  ..
                  Last edited by item; 12-18-2019, 12:05 AM.
                  If you could give the project a star on GitHub. EspoCrm believe our work truly deserves more recognition. Thanks.​

                  Comment


                  • telecastg
                    telecastg commented
                    Editing a comment
                    The array field, on which this extension is based, stores data in a text field using the notation [data1,data2,data3,etc...]

                    The only modification that I did was to store a json object instead of a "data" element inside the array, so the information is now stored as an array of json objects [{json1},{json2},{json3},etc...]
                    Last edited by telecastg; 12-18-2019, 08:47 PM.
                • telecastg
                  Active Community Member
                  • Jun 2018
                  • 907

                  #10
                  Version 1.0.2 ready. Fixed bugs: Duplicate items are no longer allowed, item removal works. Added capability to edit existing item labels.

                  EspoCRM extension that adds a custom type field which allows to dynamically create a checklist inside any EspoCRM entity - File not found · telecastg/dynamic-checklist-for-espocrm

                  Comment

                  • telecastg
                    Active Community Member
                    • Jun 2018
                    • 907

                    #11
                    Note: As currently implemented the Print to PDF out of the box feature in EspoCRM will not render the <input type="checkbox"> element in PDF so only the labels of a dynamic checklist can be printed to PDF as of now.

                    Assuming that a dynamic checklist field name is "toDo", Use this code in your template to include the checklist labels:
                    Code:
                      {{#each toDo}}
                        <table><tbody><tr>
                          <td>
                            {{this.label}}
                          </td>
                        </tr></tbody></table>  
                      {{/each}}

                    Comment

                    • dodom2
                      Senior Member
                      • Jan 2020
                      • 198

                      #12
                      Hey telecastg. Thanks for the share. So maybe Im doing something wrong but I cant seem to get anything other than the "Add" button and label to be displayed. I've done both this (https://prnt.sc/s0565b) configuration as well as name= is not empty and selected all options but still no luck. Have any suggestions on the deal with this? Im on 5.8.2. Thanks

                      Comment

                      • telecastg
                        Active Community Member
                        • Jun 2018
                        • 907

                        #13
                        Hey dodom2 the screen shot that you posted looks like the one for the out of the box "checklist" type of field that comes with Espo, which only allows you to specify "fixed" predefined checklists to your entity, similar to what you would do to describe the steps to take in a process that is meant to be repeated over and over.

                        Not sure if it's the wrong field type or maybe an old version of my extension.

                        The field type that I describe here is a custom type "dynamic checklist", which is also a checklist, but the difference is that you can add, delete or edit checklist items on the fly, so it is possible to create a mini "to do list" as a field inside an entity.

                        This is what the field definition screen for my extension looks like in the Administration field definition:

                        Click image for larger version  Name:	Dynamic-Checklist-Settings.png Views:	0 Size:	63.8 KB ID:	57660

                        After installing it, below is how it will look like in "detail" and in "edit" views..

                        In our application, for example, we use this type of field to specify what tasks are needed to complete in a work order for a service call
                        Click image for larger version  Name:	Dynamic-Checklist-Example.png Views:	0 Size:	81.7 KB ID:	57657Click image for larger version  Name:	Dynamic-Checklist-Example-Edit.png Views:	0 Size:	87.4 KB ID:	57658

                        The field type Dynamic Checklist is packaged as a free extension which you can install from the Administration GUI. The latest version can be downloaded here:
                        https://github.com/telecastg/dynamic...st-for-espocrm

                        Cheers
                        Last edited by telecastg; 04-16-2020, 04:29 AM.

                        Comment

                        • eliotrfdasi
                          Junior Member
                          • Apr 2020
                          • 1

                          #14
                          Originally posted by item
                          Hello Telecastg,
                          nice.. thanks for this... but maybe a ehancement :

                          data stored in database is : ["A;;1","B;;1","C;;1"]

                          it's not possible to store in Json format ? on developpement (php code) is more easy like so :

                          {"A":"1","B":"1"}

                          And so, we can "search" in these field, actually can't be done.
                          so we respect espoCRM intelligency

                          Regards
                          In our EspoCRM application we have an entity "Service Task" that describes a customer request and I was looking for a way to integrate a micro "to do list" into this entity as a field and thus created a custom type of field that combines the advantages of the array field type (add or delete items on the fly) and the checklist field type (mark items as done/not done or any other boolean condition) which works perfectly for this purpose.

                          Comment

                          • esforim
                            Active Community Member
                            • Jan 2020
                            • 2204

                            #15
                            I have recently starting using Dynamic Checklist. It is so beautiful to look at and use for some reason. Just wanted to give this thread a bump up so more people could use it.

                            Also, with version 5.9 EspoCRM support "Tooltips" for field, you might want to consider adding a Tooltips on Dynamic Checklist, secondly if do add a Tooltips, do consider to add something to differentiate the field from official Fields to "Extensions" field.

                            It easy to tell which is Official and which is an Extensions at the moment because all Extensions type are tooltip-less
                            Last edited by esforim; 05-22-2020, 01:01 AM.

                            Comment

                            Working...