frappe / erpnext

Free and Open Source Enterprise Resource Planning (ERP)
https://erpnext.com
GNU General Public License v3.0
20.73k stars 7.13k forks source link

Content / Document Management #3144

Closed bern-lefebvre closed 8 years ago

bern-lefebvre commented 9 years ago

Hi,

In ERPNext, we can attach documents almost everywhere, but it is very likely that these documents are also saved elsewhere, thus creating duplicates and inefficiency. Another problem arise when it comes to searching or retrieving a document. To solve these issues, I think it would make sense to incorporate the CMIS standard in ERPNext. This would allow the use of software like Alfresco or eXo to manage documents. If activated, the “Attachments” function would allow to save directly to a CMIS repository, thus enabling features of the document management system like versioning, meta-data, indexing, etc. Another area who may benefit greatly from this integration is project management. A project typically involves many files. When creating a project in ERPNext, a standard folder structure, defined by the user, could be automatically created and used throughout the project cycle.

I would like to get your opinion on this project in general, it's feasibility and ultimately the cost associated with it's development.

Thank you

Bernard Lefebvre

References:

https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis https://chemistry.apache.org/python/docs/index.html

rmehta commented 9 years ago

Yeah, this discussion came up on the forum too

I agree a centralized document system seems like a natural path forward.

What we need is:

  1. A file browser, where you can view files attached to all documents (maybe naturally sorted based on the DocType e.g. Quotation and a folder for the month and then the file)
  2. Ability to comment, on files
  3. Ability to set permissions (share) on files

A record is anyway created for file (File Data) to build this we will need to create a:

  1. Set files as public or private
  2. Serve private files via frappe (based on permissions)
  3. Hierarchical File Folder DocType
  4. The tree view

My rough estimate is 20 hours on this, will be approx $2000. Maybe we can do more if there is a better budget.

There is another such requester too. Maybe you can pool resources?

https://discuss.frappe.io/t/project-doctype-milestones/5447/7?u=rmehta

skytizens commented 9 years ago

I see some risks here. ERPNext does not have any centralization for documents, so there is not good idea to start from CMIS. CMIS is not only document, but also properties / metadatas and ... external repository... In my opinion this is option only.

In default, ERPNext should centralize and categorize internal/embedded documents. So regarding to @rmehta comments:

  1. File browser is not required, but in my opinion min categorization as DocType (please find attachment)
  2. Yes
  3. Yes screenshot200

Documents should have: Title, Description, Category (TOR, Resume, Invoice, PO, etc... - tree structure with subcategories - like Territory Tree), relations to Modules, Document creator, etc... Document in Projects has different default properties that in Human Resources.

This is quite important way to store and manage documents (attachments). Summing up: each module should have ability to add attachments (similar like add new Task in Project).

Document repository with File Browser, Folders ... is something else.

rmehta commented 9 years ago

Something like this?

file-manager

skytizens commented 9 years ago

My idea was to do not create folder structure, but some kind of Tags (categories) for search engine (I see that ERPNext working like that now).

In my opinion document management like this is something else what ERPNext is doing. Let me think about this...

hafeez3000 commented 9 years ago

@rmehta Can you refer to openkm ( http://www.openkm.com/en/ ) for more understanding...

rmehta commented 9 years ago

@skytizens the folder structure is implicit you can also add from here. Though there is also the possibility of adding new folders / customizing based on your need.

rmehta commented 9 years ago

@hafeez3000 the idea is not to make a full blown document management. But something to complement the ERP system.

bern-lefebvre commented 9 years ago

@skytizens , one does not exclude the other. ERPNext can create the structure proposed by @rmehta through CMIS on a remote repository, or ERPNext itself becomes a repository accessible through CMIS so we can connect to it from the ECM / CMS (Alfresco, eXo). Adding support for CMIS right away will enable to develop around it, which would open a lot of possibilities.

skytizens commented 9 years ago

@aptitudeqc you right. But I think that this is a process to do that. We (Skytizens) are using CMIS to integrate Alfresco with other systems (zimbra, thinkfree) so we know CMIS in details.

@rmehta yes, I know that, but I mean something else...

Based on the ERPNext philosophy, I think that we are talking about two different things: a) attachment management - just central storage for all attachments in ERPNext based on ERPNext philosophy b) document management - ability to move physical file to "storage - CMIS or local" and create some kind of link (some kind of relation between file in repository and attachments)

It is some kind of duel between structured and unstructured system. In my opinion ERPNext is close to unstructured philosophy of content management, so I think that we should stick to that and get structure by relations.

I dont want to block anyone, sorry for misunderstanding.

bern-lefebvre commented 9 years ago

@skytizens, like @rmehta said "folder structure is implicit", why not give the choice to the user to either create it in ERPNext and make it available through CMIS, or create it on an already existing CMIS repository? Not only the goal of managing documents in ERPNext is reached, but we also benefit of all the possibilities offered by CMIS. Best of both world in my opinion.

bern-lefebvre commented 9 years ago

@rmehta , I agree with you as "not to make a full blown document management". Why reinvent the wheel. This is where CMIS comes into play. By interconnecting with a document management system, we can benefit from all its advantages.

bern-lefebvre commented 9 years ago

from Oasis website: "CMIS uses Web services and Web 2.0 interfaces to enable rich information to be shared across Internet protocols in vendor-neutral formats, among document systems, publishers and repositories, within one enterprise and between companies.".

Also: "It is not intended to prescribe how specific features should be implemented within those CM systems, nor to exhaustively expose all of the CM system’s capabilities through the CMIS interfaces. Rather, it is intended to define a generic/universal set of capabilities provided by a CM system and a set of services for working with those capabilities."

I am not an CMIS expert in any way, but from what I understand, there is no need to use all the attibutes available when saving a document in a local or remote repository.

@skytizens , I agree with you that "CMIS is not only document, but also properties / metadatas", but there is no obligation to use them, but having the option to do so does not harm either.

rmehta commented 9 years ago

This is a great discussion. What we are looking at here is requirements from a small business vs enterprise. We are a 7 year / 7 person company and all we use is Dropbox. A rudimentary document system is a great does step. With Erpnext we already have a backup system for attachments so why not extend it to all company files, attached or otherwise.

From a medium size / enterprise perspective, you probably want something more bulky and feature rich. There it makes sense to go for integration.

Our first preference is the small business user. Hence the file manager.

But both are independent and I can't see why Erpnext can support both.

Sent from phone

On 24-Apr-2015, at 9:36 pm, Bernard Lefebvre notifications@github.com wrote:

from Oasis website: "CMIS uses Web services and Web 2.0 interfaces to enable rich information to be shared across Internet protocols in vendor-neutral formats, among document systems, publishers and repositories, within one enterprise and between companies.".

Also: "It is not intended to prescribe how specific features should be implemented within those CM systems, nor to exhaustively expose all of the CM system’s capabilities through the CMIS interfaces. Rather, it is intended to define a generic/universal set of capabilities provided by a CM system and a set of services for working with those capabilities."

I am not an CMIS expert in any way, but from what I understand, there is no need to use all the attibutes available when saving a document in a local or remote repository.

@skytizens , I agree with you that "CMIS is not only document, but also properties / metadatas", but there is no obligation to use them, but having the option to do so does not harm either.

— Reply to this email directly or view it on GitHub.

bern-lefebvre commented 9 years ago

@rmehta, I understand your point, but like I said, one does not exclude the other. You can build a rudimentary document system, which would fill the gap for small businesses AND make it available to other systems through CMIS, which would take care of bigger organizations. I can probably arrange to have the CMIS part taken care of, I just want to ensure that if we go that way, what you build is usable as a CMIS repository. The question I guess is : do you have the time / staff to go over the CMIS documentation and build the document management feature accordingly?

rmehta commented 9 years ago

@aptitudeqc this is the first request for a CMIS integration, so definitely its not up on our list. The rudimentary document management is a lot more interesting.

Sorry we don't have a team, but if you want help, we can give it (it needs to be very specific though)

bern-lefebvre commented 9 years ago

We are a small team also and we are very busy managing many other things, but I may be able to provide either funds or a resource to help us with this part. I would definitely need help, but I will try to keep it as minimal as possible.

This feature would add a lot of value, plus it would contribute to reduce the duplication of information, which is a constant battle when dealing with large team.

rmehta commented 9 years ago

@aptech-admin @skytizens we are ready to take on paid development if this is still a priority. Else will un-tag. Do let us know.

avcode79 commented 9 years ago

I read through the discussion and it definitely sounds interesting and something we could potentially contribute towards. However I am not sure whether all the features I am looking for are covered here. So am enumerating the features we are looking for:

Is this doable?

bern-lefebvre commented 8 years ago

Hi @rmehta,

I recently discovered the new "File Manager" feature, which is a really nice addition. I would like to suggest some minor modifications about the way the data is stored right now:

Could you provide me a rough estimate of the price of such modifications? If within my budget, I would like to sponsor this feature.

I would also be available to create the KB which explain how to make this setup work.

Thank you

Bernard Lefebvre

arizem commented 8 years ago

Hi Bernard,

we already did an ERPNext2Alfresco plugin. All doctypes and fields are automaticly archived into Alfresco. Within the plugin you can setup how the specific content goes into Alfresco. With some Modifikation it will Talk to all ECM its based on cims. If you are interrested just Contact us.

Best

Michael

rmehta commented 8 years ago

Please post new requests in new issues