By user99 on
I have been using MS Access to store 100,000s of rows, and Excel as front end, to download data using Access queries.
Now I would like to move over to Drupal, to do same
I just finished Drupal installations. I am starting to investigate all, but appreciate if someone guide me for best way to
- How I can create a "table" in backend with defined fields (do I need new MySql DB or can use Drupal's) ?
- How can I create forms in front end of Drupal, so that I can have "Search Table", "Edit Row", "Add/Delete Row" directly in the Table.
Thanks
Comments
I don't think you've quite
I don't think you've quite got the principle yet...
Drupal creates its own tables, and (for the most part) its own forms. It's not intended as a tool for querying arbitrary database structures.
You don't say what kind of data you're working with, but assuming that you're not using a multi-table database, 1 row = 1 record = 1 Drupal node.
Basically you'd need to:
- export your data from Access (in CSV or XML format)
- import your data into Drupal (eg with the Node Import module - http://drupal.org/project/node_import)
You can then use Drupal's built-in functions to view, edit, or add to the records.
_
Just one thing to add-- you would use the http://drupal.org/project/cck and/or http://drupal.org/project/webform module to handle the forms used to input the data. cck is used for forms that will create nodes while webform is used for forms that will not create nodes (ie contact forms, forms for data you wish to email out, etc).
Thanks for guidance :) I
Thanks for guidance :)
I already have lot of data to start with ( name, salary, country, project name, ... , about 20 columns ), each row represents one person.
Now this data can be just a table, Drupal users can play around with, or each of this row can be one user in Drupal. My question would be, which approach is better and can be done with only configuration changes. (Though I would believe that Drupal would have powerful way of searching list of users, based on permission level of one who is searching)
I am trying to customize Drupal to be used as HR management tool. Users of this tools will have various permission level (like User Roles, as "Boss" can see all, "Colleague" cannot see salary and so on)
_
If you want drupal to be the gatekeeper I would definitely go for using the drupal front end and letting drupal do the db grunt work.
Whether or not the employee records should be drupal users depends on whether or not you anticipate allowing them to login. Users are records for individuals that will login to the site. If they will never login, and i stress never, you can simply create an 'employee' content type and just manage them as data. If they may at some point participate in the site, I would create them as users and use the content_profile module to create the employee records content type.
Some final questions :) 1. Is
Some final questions :)
1. Is it possible to have custom profile fileds for each of drupal users (i.e. age, country, gender etc..) ? Is there a way to maintain "history" of these profile fields, when updates are made.
2. Is it possible to download list of all drupal users as a csv file?
3. Is the user search powerful enough, i.e. can one user search/view list of other users based on permissions and criteria (i.e. some users are preventing from viewing some custom profile fields of other users, based on User Role, or value of custom profile field)
_
1. yes. There's 2 methods for d6-- the core profile module which is very basic, and the content_profile module which make user profiles first class drupal nodes. For your case I would recommend using the content_profile module.
2. yes. I'd use the views and views_datasource modules for this.
3. permissions are pervasive throughout drupal. users will only see what you've given them permission to see. Though to control permission to the level of granularity you'll probably want you'll need to use one of the access control modules (ie content_access, taclite, taxonomy_access, nodeaccess, etc.) and the content field permissions module (part of the base cck package). You can also make pretty sophisticated search pages using the view module and exposed filters.
You're re-inventing the
You're re-inventing the wheel. Look for software that knows hr-xml to manage this data or sponsor/develop a hr-xml drupal module :)
ODBC
If you have an established Access db and don't want to move it over, you can always create an ODBC and connect to the database. From there, you can create php code to do any of the searching, updating, deleting or adding you want. You can create forms to achieve your goals this way as well. It may be more work in the initial development, but it allows for you to maintain your current database.