Is CiviCRM a viable choice? 4 Questions

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
4
down vote

favorite












I'm looking for a software for a non-profit organization, which should cover some special functions in addition to the 'normal' CRM functionality and wonder whether CiviCRM is suitable. I've been working in software development for a couple of years, mostly Java, but have no idea about Drupal, PHP, etc. I've installed and looked at CiviCRM, read some documentation, but have no clue if this (see below) can be done with CiviCRM out of the box or maybe with some own develpment.



One can imagine the scenario as follows: A school has modeled students and teachers as contacts. Each student belongs to exactly one class (about 8-14 students per class), lessons take place once a week, the class on a certain theme runs longterm, the students and sometimes the teachers change after a few months. Students can participate sequentially in one of about 20 classes. At each lesson, the presence of students is checked manually by means of a list.



  1. Is it possible to model and manage the classes in a UI form like e.g. contacts as own data structures (room, date, theme, ...), building a new structure that does not yet exist in CiviCRM?


  2. How best to describe the affiliation of a student/teacher to a class? Is there a possibility except 'Tags'?


  3. The registration and deregistration of a student/teacher to a class must be logged. It must be possible to determine at any time which student has been in which class for how long.


  4. For the purpose of attendance control of the lessons, a form must be printed out with the names of the students in the lessons, the lesson dates, etc. of a particular period (e.g., a month or quarter). This is filled in manually during the lesson (present yes / no). For this, a database query must determine the participants of the class and submit this list to a print template. Is there an example for this procedure?


Thank you for your comments!










share|improve this question









New contributor




Amica Benz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.















  • 1




    Welcome Amica - I tweaked the Subject to get it 'in scope' since this channel cannot answer a 'is this the best' ;-) Answer to follow
    – petednz - fuzion♦
    3 hours ago














up vote
4
down vote

favorite












I'm looking for a software for a non-profit organization, which should cover some special functions in addition to the 'normal' CRM functionality and wonder whether CiviCRM is suitable. I've been working in software development for a couple of years, mostly Java, but have no idea about Drupal, PHP, etc. I've installed and looked at CiviCRM, read some documentation, but have no clue if this (see below) can be done with CiviCRM out of the box or maybe with some own develpment.



One can imagine the scenario as follows: A school has modeled students and teachers as contacts. Each student belongs to exactly one class (about 8-14 students per class), lessons take place once a week, the class on a certain theme runs longterm, the students and sometimes the teachers change after a few months. Students can participate sequentially in one of about 20 classes. At each lesson, the presence of students is checked manually by means of a list.



  1. Is it possible to model and manage the classes in a UI form like e.g. contacts as own data structures (room, date, theme, ...), building a new structure that does not yet exist in CiviCRM?


  2. How best to describe the affiliation of a student/teacher to a class? Is there a possibility except 'Tags'?


  3. The registration and deregistration of a student/teacher to a class must be logged. It must be possible to determine at any time which student has been in which class for how long.


  4. For the purpose of attendance control of the lessons, a form must be printed out with the names of the students in the lessons, the lesson dates, etc. of a particular period (e.g., a month or quarter). This is filled in manually during the lesson (present yes / no). For this, a database query must determine the participants of the class and submit this list to a print template. Is there an example for this procedure?


Thank you for your comments!










share|improve this question









New contributor




Amica Benz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.















  • 1




    Welcome Amica - I tweaked the Subject to get it 'in scope' since this channel cannot answer a 'is this the best' ;-) Answer to follow
    – petednz - fuzion♦
    3 hours ago












up vote
4
down vote

favorite









up vote
4
down vote

favorite











I'm looking for a software for a non-profit organization, which should cover some special functions in addition to the 'normal' CRM functionality and wonder whether CiviCRM is suitable. I've been working in software development for a couple of years, mostly Java, but have no idea about Drupal, PHP, etc. I've installed and looked at CiviCRM, read some documentation, but have no clue if this (see below) can be done with CiviCRM out of the box or maybe with some own develpment.



One can imagine the scenario as follows: A school has modeled students and teachers as contacts. Each student belongs to exactly one class (about 8-14 students per class), lessons take place once a week, the class on a certain theme runs longterm, the students and sometimes the teachers change after a few months. Students can participate sequentially in one of about 20 classes. At each lesson, the presence of students is checked manually by means of a list.



  1. Is it possible to model and manage the classes in a UI form like e.g. contacts as own data structures (room, date, theme, ...), building a new structure that does not yet exist in CiviCRM?


  2. How best to describe the affiliation of a student/teacher to a class? Is there a possibility except 'Tags'?


  3. The registration and deregistration of a student/teacher to a class must be logged. It must be possible to determine at any time which student has been in which class for how long.


  4. For the purpose of attendance control of the lessons, a form must be printed out with the names of the students in the lessons, the lesson dates, etc. of a particular period (e.g., a month or quarter). This is filled in manually during the lesson (present yes / no). For this, a database query must determine the participants of the class and submit this list to a print template. Is there an example for this procedure?


Thank you for your comments!










share|improve this question









New contributor




Amica Benz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











I'm looking for a software for a non-profit organization, which should cover some special functions in addition to the 'normal' CRM functionality and wonder whether CiviCRM is suitable. I've been working in software development for a couple of years, mostly Java, but have no idea about Drupal, PHP, etc. I've installed and looked at CiviCRM, read some documentation, but have no clue if this (see below) can be done with CiviCRM out of the box or maybe with some own develpment.



One can imagine the scenario as follows: A school has modeled students and teachers as contacts. Each student belongs to exactly one class (about 8-14 students per class), lessons take place once a week, the class on a certain theme runs longterm, the students and sometimes the teachers change after a few months. Students can participate sequentially in one of about 20 classes. At each lesson, the presence of students is checked manually by means of a list.



  1. Is it possible to model and manage the classes in a UI form like e.g. contacts as own data structures (room, date, theme, ...), building a new structure that does not yet exist in CiviCRM?


  2. How best to describe the affiliation of a student/teacher to a class? Is there a possibility except 'Tags'?


  3. The registration and deregistration of a student/teacher to a class must be logged. It must be possible to determine at any time which student has been in which class for how long.


  4. For the purpose of attendance control of the lessons, a form must be printed out with the names of the students in the lessons, the lesson dates, etc. of a particular period (e.g., a month or quarter). This is filled in manually during the lesson (present yes / no). For this, a database query must determine the participants of the class and submit this list to a print template. Is there an example for this procedure?


Thank you for your comments!







evaluating-civicrm






share|improve this question









New contributor




Amica Benz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




Amica Benz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited 3 hours ago









petednz - fuzion♦

18.2k11345




18.2k11345






New contributor




Amica Benz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked 8 hours ago









Amica Benz

212




212




New contributor




Amica Benz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





Amica Benz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






Amica Benz is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.







  • 1




    Welcome Amica - I tweaked the Subject to get it 'in scope' since this channel cannot answer a 'is this the best' ;-) Answer to follow
    – petednz - fuzion♦
    3 hours ago












  • 1




    Welcome Amica - I tweaked the Subject to get it 'in scope' since this channel cannot answer a 'is this the best' ;-) Answer to follow
    – petednz - fuzion♦
    3 hours ago







1




1




Welcome Amica - I tweaked the Subject to get it 'in scope' since this channel cannot answer a 'is this the best' ;-) Answer to follow
– petednz - fuzion♦
3 hours ago




Welcome Amica - I tweaked the Subject to get it 'in scope' since this channel cannot answer a 'is this the best' ;-) Answer to follow
– petednz - fuzion♦
3 hours ago










1 Answer
1






active

oldest

votes

















up vote
3
down vote













We have a site for students and schools/providers. it is all run off Relationships and Activities and I think some of how we approached this could assist your project.



I would make each Class a Contact, then you put a Relationship between the Teacher and the Class, and another one between the Class and the Student. That way a Teacher can change and it only requires one form to be submitted (end old Teacher relationship, create new one)



We built a customisation of CiviReports so a teacher can see all 'their' students (ie the ones in Class X that teacher has relationship to) and can submit the Attendance for all class students on a single form (this uses one Activity per week but could be modified for one Activity per class with 20 yes/no fields for the 'term')



Here are more specific answers:




Is it possible to model and manage the classes in a UI form like e.g. contacts as own data structures (room, date, theme, ...), building a new structure that does not yet exist in CiviCRM?




I would attempt to do this with Class as an Org sub-type




How best to describe the affiliation of a student/teacher to a class? Is there a possibility except 'Tags'?




Per my comments above, I would use Relationships (using our extension Permissioned Relationships so you benefit from ACL and 'second degree' relationship ACLs)




The registration and deregistration of a student/teacher to a class must be logged. It must be possible to determine at any time which student has been in which class for how long.




Do as an Activity - possibly using an approach similar to our customised civireport interface so you can batch record attendance.




For the purpose of attendance control of the lessons, a form must be printed out with the names of the students in the lessons, the lesson dates, etc. of a particular period (e.g., a month or quarter). This is filled in manually during the lesson (present yes / no). For this, a database query must determine the participants of the class and submit this list to a print template. Is there an example for this procedure?




This could either be done via a Smart Group 'export' or via a Drupal Views csv download.



NOTES



You haven't said anything about whether a Teacher 'should' only see their students, or if it at least would make is simpler for the teacher if they only see students they teach. using Permissioned Relationships delivers this simply but may not be required.



For our design, using Drupal, we build a lot of lists/forms using Views and Webforms so that the normal Teacher doesn't need to actually interact with CiviCRM itself. Everything they need is provided via Menu Blocks, with simple links to their lists of Classes, Students, forms that need submitting, Attendance Reports etc. Happy to explain more offline if that sounds useful. (petednz on chat.civicrm.org)






share|improve this answer




















    Your Answer







    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "605"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    convertImagesToLinks: false,
    noModals: false,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    noCode: true, onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );






    Amica Benz is a new contributor. Be nice, and check out our Code of Conduct.









     

    draft saved


    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcivicrm.stackexchange.com%2fquestions%2f26765%2fis-civicrm-a-viable-choice-4-questions%23new-answer', 'question_page');

    );

    Post as a guest






























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    3
    down vote













    We have a site for students and schools/providers. it is all run off Relationships and Activities and I think some of how we approached this could assist your project.



    I would make each Class a Contact, then you put a Relationship between the Teacher and the Class, and another one between the Class and the Student. That way a Teacher can change and it only requires one form to be submitted (end old Teacher relationship, create new one)



    We built a customisation of CiviReports so a teacher can see all 'their' students (ie the ones in Class X that teacher has relationship to) and can submit the Attendance for all class students on a single form (this uses one Activity per week but could be modified for one Activity per class with 20 yes/no fields for the 'term')



    Here are more specific answers:




    Is it possible to model and manage the classes in a UI form like e.g. contacts as own data structures (room, date, theme, ...), building a new structure that does not yet exist in CiviCRM?




    I would attempt to do this with Class as an Org sub-type




    How best to describe the affiliation of a student/teacher to a class? Is there a possibility except 'Tags'?




    Per my comments above, I would use Relationships (using our extension Permissioned Relationships so you benefit from ACL and 'second degree' relationship ACLs)




    The registration and deregistration of a student/teacher to a class must be logged. It must be possible to determine at any time which student has been in which class for how long.




    Do as an Activity - possibly using an approach similar to our customised civireport interface so you can batch record attendance.




    For the purpose of attendance control of the lessons, a form must be printed out with the names of the students in the lessons, the lesson dates, etc. of a particular period (e.g., a month or quarter). This is filled in manually during the lesson (present yes / no). For this, a database query must determine the participants of the class and submit this list to a print template. Is there an example for this procedure?




    This could either be done via a Smart Group 'export' or via a Drupal Views csv download.



    NOTES



    You haven't said anything about whether a Teacher 'should' only see their students, or if it at least would make is simpler for the teacher if they only see students they teach. using Permissioned Relationships delivers this simply but may not be required.



    For our design, using Drupal, we build a lot of lists/forms using Views and Webforms so that the normal Teacher doesn't need to actually interact with CiviCRM itself. Everything they need is provided via Menu Blocks, with simple links to their lists of Classes, Students, forms that need submitting, Attendance Reports etc. Happy to explain more offline if that sounds useful. (petednz on chat.civicrm.org)






    share|improve this answer
























      up vote
      3
      down vote













      We have a site for students and schools/providers. it is all run off Relationships and Activities and I think some of how we approached this could assist your project.



      I would make each Class a Contact, then you put a Relationship between the Teacher and the Class, and another one between the Class and the Student. That way a Teacher can change and it only requires one form to be submitted (end old Teacher relationship, create new one)



      We built a customisation of CiviReports so a teacher can see all 'their' students (ie the ones in Class X that teacher has relationship to) and can submit the Attendance for all class students on a single form (this uses one Activity per week but could be modified for one Activity per class with 20 yes/no fields for the 'term')



      Here are more specific answers:




      Is it possible to model and manage the classes in a UI form like e.g. contacts as own data structures (room, date, theme, ...), building a new structure that does not yet exist in CiviCRM?




      I would attempt to do this with Class as an Org sub-type




      How best to describe the affiliation of a student/teacher to a class? Is there a possibility except 'Tags'?




      Per my comments above, I would use Relationships (using our extension Permissioned Relationships so you benefit from ACL and 'second degree' relationship ACLs)




      The registration and deregistration of a student/teacher to a class must be logged. It must be possible to determine at any time which student has been in which class for how long.




      Do as an Activity - possibly using an approach similar to our customised civireport interface so you can batch record attendance.




      For the purpose of attendance control of the lessons, a form must be printed out with the names of the students in the lessons, the lesson dates, etc. of a particular period (e.g., a month or quarter). This is filled in manually during the lesson (present yes / no). For this, a database query must determine the participants of the class and submit this list to a print template. Is there an example for this procedure?




      This could either be done via a Smart Group 'export' or via a Drupal Views csv download.



      NOTES



      You haven't said anything about whether a Teacher 'should' only see their students, or if it at least would make is simpler for the teacher if they only see students they teach. using Permissioned Relationships delivers this simply but may not be required.



      For our design, using Drupal, we build a lot of lists/forms using Views and Webforms so that the normal Teacher doesn't need to actually interact with CiviCRM itself. Everything they need is provided via Menu Blocks, with simple links to their lists of Classes, Students, forms that need submitting, Attendance Reports etc. Happy to explain more offline if that sounds useful. (petednz on chat.civicrm.org)






      share|improve this answer






















        up vote
        3
        down vote










        up vote
        3
        down vote









        We have a site for students and schools/providers. it is all run off Relationships and Activities and I think some of how we approached this could assist your project.



        I would make each Class a Contact, then you put a Relationship between the Teacher and the Class, and another one between the Class and the Student. That way a Teacher can change and it only requires one form to be submitted (end old Teacher relationship, create new one)



        We built a customisation of CiviReports so a teacher can see all 'their' students (ie the ones in Class X that teacher has relationship to) and can submit the Attendance for all class students on a single form (this uses one Activity per week but could be modified for one Activity per class with 20 yes/no fields for the 'term')



        Here are more specific answers:




        Is it possible to model and manage the classes in a UI form like e.g. contacts as own data structures (room, date, theme, ...), building a new structure that does not yet exist in CiviCRM?




        I would attempt to do this with Class as an Org sub-type




        How best to describe the affiliation of a student/teacher to a class? Is there a possibility except 'Tags'?




        Per my comments above, I would use Relationships (using our extension Permissioned Relationships so you benefit from ACL and 'second degree' relationship ACLs)




        The registration and deregistration of a student/teacher to a class must be logged. It must be possible to determine at any time which student has been in which class for how long.




        Do as an Activity - possibly using an approach similar to our customised civireport interface so you can batch record attendance.




        For the purpose of attendance control of the lessons, a form must be printed out with the names of the students in the lessons, the lesson dates, etc. of a particular period (e.g., a month or quarter). This is filled in manually during the lesson (present yes / no). For this, a database query must determine the participants of the class and submit this list to a print template. Is there an example for this procedure?




        This could either be done via a Smart Group 'export' or via a Drupal Views csv download.



        NOTES



        You haven't said anything about whether a Teacher 'should' only see their students, or if it at least would make is simpler for the teacher if they only see students they teach. using Permissioned Relationships delivers this simply but may not be required.



        For our design, using Drupal, we build a lot of lists/forms using Views and Webforms so that the normal Teacher doesn't need to actually interact with CiviCRM itself. Everything they need is provided via Menu Blocks, with simple links to their lists of Classes, Students, forms that need submitting, Attendance Reports etc. Happy to explain more offline if that sounds useful. (petednz on chat.civicrm.org)






        share|improve this answer












        We have a site for students and schools/providers. it is all run off Relationships and Activities and I think some of how we approached this could assist your project.



        I would make each Class a Contact, then you put a Relationship between the Teacher and the Class, and another one between the Class and the Student. That way a Teacher can change and it only requires one form to be submitted (end old Teacher relationship, create new one)



        We built a customisation of CiviReports so a teacher can see all 'their' students (ie the ones in Class X that teacher has relationship to) and can submit the Attendance for all class students on a single form (this uses one Activity per week but could be modified for one Activity per class with 20 yes/no fields for the 'term')



        Here are more specific answers:




        Is it possible to model and manage the classes in a UI form like e.g. contacts as own data structures (room, date, theme, ...), building a new structure that does not yet exist in CiviCRM?




        I would attempt to do this with Class as an Org sub-type




        How best to describe the affiliation of a student/teacher to a class? Is there a possibility except 'Tags'?




        Per my comments above, I would use Relationships (using our extension Permissioned Relationships so you benefit from ACL and 'second degree' relationship ACLs)




        The registration and deregistration of a student/teacher to a class must be logged. It must be possible to determine at any time which student has been in which class for how long.




        Do as an Activity - possibly using an approach similar to our customised civireport interface so you can batch record attendance.




        For the purpose of attendance control of the lessons, a form must be printed out with the names of the students in the lessons, the lesson dates, etc. of a particular period (e.g., a month or quarter). This is filled in manually during the lesson (present yes / no). For this, a database query must determine the participants of the class and submit this list to a print template. Is there an example for this procedure?




        This could either be done via a Smart Group 'export' or via a Drupal Views csv download.



        NOTES



        You haven't said anything about whether a Teacher 'should' only see their students, or if it at least would make is simpler for the teacher if they only see students they teach. using Permissioned Relationships delivers this simply but may not be required.



        For our design, using Drupal, we build a lot of lists/forms using Views and Webforms so that the normal Teacher doesn't need to actually interact with CiviCRM itself. Everything they need is provided via Menu Blocks, with simple links to their lists of Classes, Students, forms that need submitting, Attendance Reports etc. Happy to explain more offline if that sounds useful. (petednz on chat.civicrm.org)







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered 3 hours ago









        petednz - fuzion♦

        18.2k11345




        18.2k11345




















            Amica Benz is a new contributor. Be nice, and check out our Code of Conduct.









             

            draft saved


            draft discarded


















            Amica Benz is a new contributor. Be nice, and check out our Code of Conduct.












            Amica Benz is a new contributor. Be nice, and check out our Code of Conduct.











            Amica Benz is a new contributor. Be nice, and check out our Code of Conduct.













             


            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcivicrm.stackexchange.com%2fquestions%2f26765%2fis-civicrm-a-viable-choice-4-questions%23new-answer', 'question_page');

            );

            Post as a guest













































































            Comments

            Popular posts from this blog

            What does second last employer means? [closed]

            Installing NextGIS Connect into QGIS 3?

            One-line joke