Your Moodle version

Activities: Dataform

mod_dataform
Maintained by Picture of Itamar Tzadok Itamar Tzadok
The Dataform module allows the course manager to design and construct an entry form from various input elements (text and rich text fields, urls, files, pictures, etc.) in a flexible layout. Users can then add information records to a collection, which can be viewed in various ways and searched for particular items.
682
651
20

The dataform module is a major enhancement of the standard Database activity module and is meant to offer all the functionality offered by the Database module and much more in a more flexible way.

The module allows the course manager to design and construct an entry form from various input elements (text and rich text fields, urls, files, pictures, etc.) in a flexible layout. Users can then add information records to a collection, which can be viewed in various ways and searched for particular items.

The dataform features include (among other things):

  • A multiple views system - allows the instructor to design several different views of the entries in a datform activity. Each view can show a designated subset of the entries in a designated layout.
  • Enhanced template tags - A new template tags system allows for exposing many more bits of information and makes it easy to add designated patterns in new field and view types.
  • Enhanced entry actions - Bulk edit, duplicate, delete, approve etc. Inline editing. Form editing options such as required fields (via Moodle forms).
  • New packaging system - based on Moodle backup/restore and allows for packaing a dataform instance and restoring into an existing instance.
  • Enhanced filtering system - allows the instructor to define different filters each of which can determine sort (including nested sort) and search options (various search criteria). Filters can be fixed to particular views or applied on the file from the activity main page (if included in the view template).

New view/field types include (among others):

  • Tabular view - a view type which allows for displaying the entries in a table. The design of the entries table has been simplified to drawing the desired table with optional header row and an entry row in the moodle editor.
  • Nanogong field - a field type for adding audio content to an entry via the nanogong applet.
  • Calculated field - a field type which can display a result of a simple calculation on one or two number fields in the entry.

Sets

This plugin is part of set Dataform.

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5

Contributors

Picture of Itamar Tzadok
Itamar Tzadok (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Picture of Miryan salas
    Tue, Oct 28, 2014, 9:59 PM
    mar, 28 de oct de 2014, 21:59
    Hello,
    I found the problem, it was a bug reported by you:
    https://tracker.moodle.org/browse/MDL-36433
    But now, I have another issue trying to import a csv file through the csv view. The problem is that the author id imported is always the id of the user who imports the csv, instead of the id stored in the csv (author:id column). Could you help me please? Thank you
  • Picture of Itamar Tzadok
    Tue, Oct 28, 2014, 10:07 PM
    Miryan, let's continue this discussion in the Dataform forum at https://moodle.org/mod/forum/view.php?id=8192. smile
  • Picture of David Mudrák
    Thu, Dec 18, 2014, 11:33 PM
    I am happy to announce the Dataform is our next Featured Moodle plugin! Read more at https://moodle.org/mod/forum/discuss.php?d=277000 Well done Itamar and congrats!
  • Picture of Abdul Majid
    Thu, Jan 15, 2015, 6:10 PM
    Hi Itamar,

    I've noticed that the filter feature does not work but instead throws an SQL error on Moodle running PostgreSQL. Please see debug info and stack trace below:

    Error reading from database

    Debug info: ERROR: for SELECT DISTINCT, ORDER BY expressions must appear in select list
    SELECT DISTINCT e.id, e.dataid, e.state, e.timecreated, e.timemodified, e.userid, e.groupid, u.id AS uid ,u.picture,u.firstname,u.lastname,u.firstnamephonetic,u.lastnamephonetic,u.middlename,u.alternatename,u.imagealt,u.email,u.idnumber,u.username FROM mdl_dataform_entries e
    JOIN mdl_user u ON u.id = e.userid LEFT JOIN mdl_dataform_contents c16 ON c16.fieldid = 16 AND c16.entryid = e.id WHERE e.dataid = $1 ORDER BY c16.content ASC LIMIT 20 OFFSET 0
    [array (
    0 => '5',
    )]
    Error code: dmlreadexception
    Stack trace:
    line 443 of /lib/dml/moodle_database.php: dml_read_exception thrown
    line 243 of /lib/dml/pgsql_native_moodle_database.php: call to moodle_database->query_end()
    line 748 of /lib/dml/pgsql_native_moodle_database.php: call to pgsql_native_moodle_database->query_end()
    line 343 of /mod/dataform/classes/entry_manager.php: call to pgsql_native_moodle_database->get_records_sql()
    line 133 of /mod/dataform/classes/entry_manager.php: call to mod_dataform_entry_manager->fetch_entries()
    line 341 of /mod/dataform/classes/pluginbase/dataformview.php: call to mod_dataform_entry_manager->set_content()
    line 324 of /mod/dataform/classes/pluginbase/dataformview.php: call to mod_dataform\pluginbase\dataformview->set_entries_content()
    line 404 of /mod/dataform/classes/dataform.php: call to mod_dataform\pluginbase\dataformview->display()
    line 70 of /mod/dataform/view.php: call to mod_dataform_dataform->display()

    Hoping you can fix this.

    Regards,
    Majid
  • Picture of Itamar Tzadok
    Thu, Jan 15, 2015, 10:37 PM
    Hi Majid. Please open a tracker issue in the Dataform tracker component (Set: Dataform) https://tracker.moodle.org/browse/CONTRIB/component/13430, with a simple scenario that reproduces this message, and we will take it from there. smile
  • Picture of Abdul Majid
    Tue, Jan 27, 2015, 12:46 AM
    Hi Itamar,
    I've created a new issue for you to investigate smile

    https://tracker.moodle.org/browse/CONTRIB-5573
  • Picture of Hamed Azimi
    Thu, Jun 25, 2015, 3:38 AM
    Hi Itamar,

    I just added dataform as an activity to a course, and all students are able to submit their works, but I want all student also be able to "View" all entries from all students (Not able to manage them. no permission to delete and ... . just view).

    I changed the permissions from dataform activity administrator but nothing happened and just course creator and teacher are able to view all entries.

    I use moodle 2.9 and RTL style. Appreciated if you would help me do what I want.

    Best,
    Hamed
  • Picture of Hamed Azimi
    Thu, Jun 25, 2015, 4:29 AM
    Hi Itamar,

    Thanks a lot. You are right (as you helped in private message). The problem was "Separate participants" option which was set to "Yes"!

    Thanks for your absolutely great module. And also thanks for your nice support (and fast answer).

    Best,
    Hamed
  • Picture of Hamed Azimi
    Thu, Nov 5, 2015, 5:01 PM
    Hi Itamar,
    Is it possible to control the width of "File" fields? We have two part in one of our dataforms, (1. text field 2.file) I want to make it side by side while user is adding new entry. But now it shows the editor below the upload file box.
    Regards
  • Picture of L Passaglia
    Thu, Dec 24, 2015, 4:43 AM
    Hi,
    Does Dataform work with Moodle version 3.0?
    Can the tables mdl_dataform_fields and mdl_dataform_views be modified without affecting the plugin?
    Thank you
  • Picture of Abdul Majid
    Tue, Mar 15, 2016, 12:37 AM
    Hi Itamar,

    I have upgraded to the latest version (2.9 - 2015051100) of this plugin and see the following database error:

    Debug info: Error: for SELECT DISTINCT, ORDER BY expressions must appear in select list
    LINE 1: ... e.id WHERE e.dataid = $1 ORDER BY c12.conten...
    Error code: dmlreadexception

    My database server is PostgreSQL v9.

    Hope you can help resolve this.

    Regards,
    Majid.
  • Picture of Hamed Azimi
    Sat, Jul 9, 2016, 10:50 PM
    Hi Itamar,

    Since upgrading to moodle 3.1, we get this error in different places of our site:
    Navigation node intersect: Adding a node that already exists availabilitysettingdataformcontent
    line 780 of /lib/navigationlib.php: call to debugging()
    line 344 of /lib/navigationlib.php: call to navigation_node_collection->add()
    line 320 of /lib/navigationlib.php: call to navigation_node->add_node()
    line 3712 of /lib/navigationlib.php: call to navigation_node->add()
    line 3730 of /lib/navigationlib.php: call to settings_navigation->load_administration_settings()
    line 3730 of /lib/navigationlib.php: call to settings_navigation->load_administration_settings()
    line 3681 of /lib/navigationlib.php: call to settings_navigation->load_administration_settings()
    line 3539 of /lib/navigationlib.php: call to settings_navigation->load_administration_settings()
    line 724 of /lib/pagelib.php: call to settings_navigation->initialise()
    line 773 of /lib/pagelib.php: call to moodle_page->magic_get_settingsnav()
    line 7211 of /lib/adminlib.php: call to moodle_page->__get()
    line 849 of /admin/index.php: call to admin_externalpage_setup()

    Any opinion will be appreciated.
  • Picture of Itamar Tzadok
    Sun, Jul 10, 2016, 5:16 AM
    This seems to be related to the availability_dataformcontent plugin and due to Moodle core change in availability plugin settings since Moodle 3.0. The availability_dataformcontent plugin was adjusted accordingly in release 3.0.4. See if upgrading resolves the issue. smile
  • Picture of Hamed Azimi
    Sun, Jul 10, 2016, 9:43 PM
    Thanks Itamar smile

    It seems That was the solution. I don't see the error anymore.
1 2 3 4 5
Please login to post comments