FRP Door Industry ERPNext Implementation Case: How to Reduce Production Planning Time from 3 Hours to 10 Minutes

Background

Cube Doors is a leading manufacturer of FRP doors in Kerala, India. They faced challenges with data accuracy, speed and efficiency, accessibility, security, cost, scalability, integration, reporting and analysis, and compliance.

Solution

Wahni, an ERPNext partner, implemented ERPNext for Cube Doors. The solution included a custom feature to handle a large number of orders with unique specifications.

Results

The implementation of ERPNext resulted in the following benefits for Cube Doors:

  • Improved data accuracy
  • Increased speed and efficiency
  • Enhanced accessibility
  • Improved security
  • Reduced costs
  • Increased scalability
  • Improved integration
  • Enhanced reporting and analysis
  • Improved compliance

Conclusion

ERPNext helped Cube Doors to improve their overall business performance.

Key Takeaways

  • ERPNext can help businesses to improve data accuracy, speed and efficiency, accessibility, security, cost, scalability, integration, reporting and analysis, and compliance.
  • ERPNext can be customized to meet the specific needs of businesses.
  • The implementation of ERPNext can lead to significant improvements in business performance.

ERPNext vs. SAP Business One In-Depth Analysis: Choosing the Right Management Software for Your Small to Medium-Sized Enterprise

ERPNext and SAP Business One (SAP B1) are two popular choices offering different functionalities and capabilities, hence it’s essential to conduct a thorough comparison. This comprehensive comparison will delve into key aspects such as cost, customization, implementation, user-friendliness, functionality, and address common queries through a detailed FAQ section. These insights will aid you in making informed decisions for your enterprise’s ERP needs.

Key Feature Comparison

Feature ERPNext SAP Business One
Cost Open-source and free Expensive, high implementation costs
Customization User-friendly interface, easy to customize Complex customization requiring professional expertise
Implementation Relatively quick implementation possible, some businesses go live within weeks Time-consuming, may take months or even years to complete
User-Friendliness Renowned for its user-friendly interface Interface might be complex, may require professional training

FAQ Comparison

FAQ ERPNext SAP Business One
Does the service offer API? Yes, ERPNext provides RESTful API, facilitating easy integration with other systems and applications. Yes, SAP Business One provides API, enabling integration with various third-party applications and services.
What is the service typically used for? ERPNext is used for managing business operations and processes including accounting, inventory management, customer relationship management, and project management. SAP Business One is also used for managing business operations and processes, with a focus on small to medium-sized enterprises.
Does the service provide multi-user functionality (e.g., teams)? Yes, ERPNext allows multiple users to collaborate and use the system simultaneously, suitable for teams of various sizes. Yes, SAP Business One also provides multi-user functionality, enabling effective collaboration among teams.
Does the service offer guides, tutorials, and customer support? Yes, ERPNext provides extensive documentation, tutorials, and customer support to help users get started and address any issues they may encounter. Yes, SAP Business One offers guides, tutorials, and customer support to assist users in effectively using the software.
Which platforms does the service support? ERPNext is a web-based application, capable of running on any major operating system, using modern browsers such as Chrome, Edge, Safari, and Opera. SAP Business One supports Windows and Mac operating systems, providing flexibility in platform compatibility.
Does the service integrate with other applications? Yes, ERPNext integrates with various applications and services including e-commerce platforms, payment gateways, email services, cloud storage, cloud telephony, and authentication services. Yes, SAP Business One also integrates with various third-party applications and services, enabling seamless data exchange and workflow integration.
Who are the primary users of the service? ERPNext is popular among small to medium-sized enterprises seeking to optimize business processes and operations. SAP Business One is primarily used by small to medium-sized enterprises seeking comprehensive ERP solutions.

Conclusion

In conclusion, ERPNext emerges as the preferred choice for enterprises seeking cost-effectiveness, user-friendliness, and rapid implementation. While SAP Business One offers more functionalities, its high costs and complexity may pose barriers to some organizations. Ultimately, the choice between ERPNext and SAP Business One depends on the specific needs and budget of your enterprise. If you prioritize affordability, ease of use, and quick implementation, then ERPNext is the optimal choice. However, if you require a more comprehensive solution and are willing to invest, then SAP Business One may be more suitable.

ERPNext Installation V15

Table of Contents:

  • Step 1: Server Setup
  • Step 2: Install Required Packages
  • Step 3: Configure MySQL Server
  • Step 4: Install CURL, Node, NPM, Yarn
  • Step 5: Install Frappe Bench
  • Step 6: Install ERPNext and other Apps
  • Step 7: Setup Production Server
  • Step 8: Custom Domain & SSL Setup

PRE-REQUISITES:

  • Operating System: Linux Ubuntu 22.04 LTS
  • Minimum Recommended Hardware: 2 CPU | 4 GB RAM | 20 GB Disk
  • Root shell access to the server (via SSH)

1、SERVER SETUP

1.1 Login to the server as root user

1.2 Setup correct date and timezone (important step as it impacts ERPNext usage)

Check the server’s current timezone

date

Set correct timezone as per your region

timedatectl set-timezone "America/New_York"

1.3 Update & upgrade server packages

sudo apt-get update -y<br>sudo apt-get upgrade -y

1.4 Create a new user
We create this user as a security measure to prevent root user access.
This user will be assigned admin permissions and will be used as the main Frappe Bench user

sudo adduser [frappe-user]<br>usermod -aG sudo [frappe-user]<br>su [frappe-user]<br>cd /home/[frappe-user]/

Note: Replace [frappe-user] with your username. Eg. sudo adduser myname

For some cloud providers like AWS & Azure, you wont’t have root password access so you can simply run sudo -i when you login to the server using the default user (eg. ubuntu in AWS)

2、INSTALL REQUIRED PACKAGES

Frappe Bench and ERPNext requires many packages to run smoothly. In this step we will install all the required packages for the system to work correctly.

Note: During the installation of these packages the server might prompt you to confirm if you want to continue installing the package [Y/n]. Just hit “y” on your keyboard to continue.

2.1 Install GIT

sudo apt-get install git

Check if GIT is correctly installed by running git --version

2.2 Install Python

sudo apt-get install python3-dev python3.10-dev python3-setuptools python3-pip python3-distutils

2.3 Install Python Virtual Environment

sudo apt-get install python3.10-venv

Check if Python is correctly installed by running python3 -V

2.4 Install Software Properties Common (for repository management)

sudo apt-get install software-properties-common

2.5 Install MariaDB (MySQL server)

sudo apt install mariadb-server mariadb-client

Check if MariaDB is correctly installed by running mariadb --version

2.6 Install Redis Server

sudo apt-get install redis-server

2.7 Install other necessary packages (for fonts, PDFs, etc)

sudo apt-get install xvfb libfontconfig wkhtmltopdf<br>sudo apt-get install libmysqlclient-dev

3、CONFIGURE MYSQL SERVER

3.1 Setup the server

sudo mysql_secure_installation

During the setup process, the server will prompt you with a few questions as given below. Follow the instructions to continue the setup;

  • Enter current password for root: (Enter your SSH root user password)
  • Switch to unix_socket authentication [Y/n]: Y
  • Change the root password? [Y/n]: Y
    It will ask you to set new MySQL root password at this step. This can be different from the SSH root user password.
  • Remove anonymous users? [Y/n] Y
  • Disallow root login remotely? [Y/n]: N
    This is set as N because we might want to access the database from a remote server for using business analytics software like Metabase / PowerBI / Tableau, etc.
  • Remove test database and access to it? [Y/n]: Y
  • Reload privilege tables now? [Y/n]: Y

3.2 Edit the MySQL default config file

sudo vim /etc/mysql/my.cnf

[mysqld]<br>character-set-client-handshake = FALSE<br>character-set-server = utf8mb4<br>collation-server = utf8mb4_unicode_ci<br>[mysql]<br>default-character-set = utf8mb4

If you don’t know how to use VIM:

  • Once the file is open, hit “i” key to start editing the file.
  • After you’re done editing the file hit “Esc + :wq” to save the file

3.3 Restart the MySQL server (for the config to take effect)

sudo service mysql restart

4、Instal CURL, Node, NPM and Yarn

4.1 Install CURL

sudo apt install curl

4.2 Install Node

curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash<br>source ~/.profile<br>nvm install 18

4.3 Install NPM

sudo apt-get install npm

4.4 Install Yarn

sudo npm install -g yarn

Check if Node is correctly installed by running node --version

5、INSTALL FRAPPE BENCH

5.1 Install Frappe Bench

sudo pip3 install frappe-bench

Check if Frappe Bench is correctly installed by running bench --version

5.2 Initialize Frappe Bench

bench <strong>init</strong> --frappe-branch version-15 frappe-bench

5.3 Go to Frappe Bench directory
This will be the main directory from where we will be running all the commands.
The full path of this directory will be: /home/[frappe-user]/frappe-bench/

cd frappe-bench/

5.4 Change user directory permissions
This will allow execution permission to the home directory of the frappe user we created in step 1.4

chmod -R o+rx /home/[frappe-user]/

5.5 Create a New Site
We will use this as the default site where ERPNext and other apps will be installed.

bench <strong>new</strong>-site site1.local

6、Install ERPNext and other Apps

Finally, we’re at the last stage of the installation process!

6.1 Download the necessary apps to our server
Download the payments apps . This app is required during ERPNext installation

bench get-app payments

Download the main ERPNext app

bench get<strong>-</strong>app <em>--branch version-15 erpnext</em>

Download the HR & Payroll app (optional)

bench get-app hrms

Check if all the apps are correctly downloaded by running bench version --format table

6.2 Install all the Apps

Install the main ERPNext app

bench --site site1.local install-app erpnext

Install the HR & Payroll app (optional)

bench --site site1.local install-app hrms

Note: You might get some warnings / error messages while trying to install apps on the default site. These messages can be ignored and you can proceed further.

7、SETUP PRODUCTION SERVER

7.1 Enable scheduler service

bench --site site1.local enable-scheduler

7.2 Disable maintenance mode

bench --site site1.local set-maintenance-mode off

7.3 Setup production config

sudo bench setup production [frappe-user]

7.4 Setup NGINX web server

bench setup nginx

7.5 Final server setup

sudo supervisorctl restart all sudo bench setup production [frappe-user]

When prompted to save new/existing config files, hit “Y”

Ready to Go!

You can now go to your server [IP-address]:80 and you will have a fresh new installation of ERPNext ready to be configured!

If you are facing any issues with the ports, make sure to enable all the necessary ports on your firewall using the below commands;

sudo ufw allow 22,25,143,80,443,3306,3022,8000/tcp<br>sudo ufw enable

8、Custom Domain & SSL Setup

For SSL configuration, you can run the following commands;

Before you begin, add an A record on your domain DNS and point it to the ERPN server IP address.

cd /home/[frappe-user]/frappe-bench/<br>bench config dns_multitenant on

bench setup add-domain [subdomain.yourdomain.com] --site [site-name]<br>bench setup nginx<br>sudo service nginx reload

sudo snap install core<br>sudo snap refresh core<br>sudo snap install --classic certbot<br>sudo ln -s /snap/bin/certbot /usr/bin/certbot<br>sudo certbot --nginx

On terminal prompt, follow the instructions and select the correct site number and trying access your site on https:// from the custom domain you just added.

You now have a fully production ready setup of Frappe & ERPNext on your server!