Based On Login Id Connecting Or Mapping Different Company On one Server?

Hi,
In ERp I Create two COmpany with two different users able to login with corresponding data.for example, I Have two Company And Two Login User CITYSKY-Mohamed and EA Sports -Sajid.using adminstrator create one user for Santhu and Another user for CITYSKY with same url, based on login id,One Company Data Is Secured For Other Companies… Why I Ask This Using one server, many customer can use …hope u got it??Here,Mohamed And Sajid Are Login User For Different Company…
I m WAiting For Ure Reply @rmehta
Regards,
Sajid

@Mohamed_Sajid no, sorry did not get it!

Hi,
In ERp I Create two COmpany with two different users able to login with corresponding data.for example, I Have two Company And Two Login User CITYSKY-Mohamed and EA Sports -Sajid.using adminstrator create one user for Santhu and Another user for CITYSKY with same url, based on login id,One Company Data Is Secured For Other Companies… Why I Ask This Using one server, many customer can use Our Corresoding Company Data .How To Secure The Data For One Another…Here,Mohamed And Sajid Are Login User For Different Company…hope u got it??Please…
I m WAiting For Ure Reply @rmehta
Regards,
Sajid

Sajid,

Using permission manager system in ERPNext, you can restrict access of user to a specific company. Check following link to learn more.

https://erpnext.com/user-guide/setting-up/permissions/user-permissions

Please address your queries to the community, and not to individuals.

ok Thanks…
I M already Give THe Specfic Company To User Thats Ok…And Clear.But The Data Is Not Hidden Both Company? Like Sales Invoice,Customers,Employee,etc…Why???For E.g… CITYSKY Company Data Is Show On The EA Sports Company UserLogin ID.How To Secure The Data Between Two User Or Two Company???
Thanks…

@Mohamed_Sajid

Hello,

RE: Based On Login Id Connecting Or Mapping Different Company On one Server?

From my review, the data can only be shared or restricted base on user permissions. The direct answer to your question is – assume the data will be shared because it’s the same database. From this point, you can only assign user permissions to regulate access to datasets.

Actually, what you’re trying to perform cannot be managed from the ERP, but rather the database server. You’ll need to create a different database with usernames and passwords and connect the ERP to that database based on user credentials. Should one or the other need to use datasets from the other database, they’ll need to send the information through messaging or file transfer.

Thank you,

– MMS

Thanks…

Its Possible???
How Will I need to create a different database with usernames and passwords and connect the ERP to that database based on user credentials.???
And Then How ll I Connect to the ERP???
regards
sajid

DTS-03182015:11:11

Hello,

Of course, it’s an action permitted on much larger ERPs because the case at point – having multiple companies and all of their fields are generally different. In larger ERPs, there’s an enterprise SQL server that hosts the database and another that hosts the ERP web or application interface. In most enterprises,the enterprise would have a database application while here we’re dealing with a web interface.

DBAs would create the database for each company uploading the .CSV files so the tables match. So, instead of having company X become a member of your ERP and then company A, B, C all are members as well which could be over 1 million members total, the DBA would create a database for each company.

Here’s the real technical part in understanding this. Server daemons can perform server-to-server updates. So datasets are replicated in the background automatically. For example, you would set your database server to auto-update (if you can, some proxies must be configured) from companies A, B, C, to databases A, B, and C.

Database I/O(A,B,C) <-----> Companies ERP I/O (A,B,C) <----> Your Database I/O (A,B,C) <----> Your ERP I/O

Now in the ERP you would only have one field “Connect to which database:” which should be presented before processing any information in the ERP. Other ERPs would only host a “home” database and then provide the opportunity to register another database.

For example, if we both have ERPnext, then I should have the opportunity to register your database into my ERP which creates the connection between our ERPs, instead you and I becoming a member of each other. This should be the multi-company operation in ERPnext, but I have only seen one (1) database and information is regulated through user permissions.

What I have described above is “Big Data.” Lets say you’re Nike and I’m a Manufacturer X and another is named: BigSmall Stuff. Well, we all have ERPs and SQL servers where each are different tables and fields. So, in this case, we all make sure each database .CSV file is available for download, to create tables, fields and etc in a new database for each of us to register and share.

So, in “Big Data” a connection is registered between each of us, through each SQL server, to each database. When a product is sold or purchased, the inventory is automatically updated (correct?) Therefore, a single command /script does select all databases (where needed) and updates all registered databases, so each company ERP and SQL server database in the supply chain is updated automatically.

This is why the ERP must never share the same server as the SQL server. Beyond the constant traffic through out the day, maintenance could never be performed without breaking the chain.

Just to go through this documentation with Frappe.io costs me $3 (3USD) / HR, that means I lost over $50 (50USD) in the past 36 hours dealing with Frappe.io and ERPnext.

When Frappe.io releases the .CSV files for ERPnext, a new database can created with the required formatting and a script can be written as a connector, to connect different databases based on user permissions. This way, a separate SQL server can be used.

Thank you,

— MMS

You can host multiple ERPNext instances on the same server.
ref: https://github.com/frappe/bench/wiki/Multitenant-Setup