Skip to main content

Posts

Seven Benefits of using HRMS

It is an integrated system providing information used by HR management in decision making. It allows a company to keep track of all of its employees and information about them—whatever information the company chooses to store there, such as employee demographics, benefits tracking, and performance information. It is usually created in a database or, more often, in a series of interrelated databases. 1. It’ll improve the efficiency of your HR team One of the most immediate benefits of using specialist HR software – once you’ve completed the implementation and launch phase – is an improvement in the efficiency of your HR team. Repetitive, admin-intensive tasks such as chasing managers to complete probation or annual reviews can be automated, and others – such as approving holiday or certifying absence – can be delegated to managers and employees through self-service functionality. 2. Reducing Errors and Maintaining Compliance Many HR tasks are highly regulated, and because

ADempiere Theme Management

ADempiere Web UI have implemented only single default theme. The theme folder structure will be something similar to the below -zkwebui |-theme |-<theme name> |-images |-js |-zkex |-zkmax |-zul |-css ext.css.dsp norm.css.dsp zk.wcs |-html |-img |-less |-font _header.less _reset.less _zkmixins.less _zkvariables.less norm.less login-info.zul I am not going to explain more. Find more details here : http://wiki.adempiere.net/ZK_Theme_Development Here I am going to tell you 2 things: 1) Which CSS section need to edit, 2) What are the image file names. See the ITheme.java (https://github.com/adempiere/adempiere/blob/develop/zkwebui/WEB-INF/src/org/adempiere/webui/theme/IT

ADempiere 3.9.1 Release Note

The world class professional ERP ADempiere have released its latest version 3.9.1 twenty days back. Great News. A big salute to the great community setting the proper measures and  taking the software to the next level. The acceptance level of ADempiere screens in the bottom level of organization - data entry operators - is always difficult. In the case of massive number of PO's or direct invoice entries, will take time and less visibility of entire picture. The new version contains the Quick Sheet feature, which can save the data entry time, but the complete view of an entry is still bit far. For example, while we do a Invoice entry, we move to Invoice Line, we are losing the business partner, invoice reference number, cumulative amount of the invoice etc. The included tab as grid will sort out most of the issues, but the data entry in that view need fine tuning to grab the data entry satisfaction. But this is not  at all a concern while selecting ADempiere as an ERP. ADemp

Popup Message from Server to Clients using Socket Programming in Adempiere

It will be more convenient for the client if he get a popup notification at the time of order completion. We achieved this using Socket Programming in ADempiere. In Socket Programming, messages sends through ports using port number. The message send from the server is identified by the client port and given to a popup window. A column named IsNotified added to AD_Session Table and it’s value is set to ' Y'  by default . When an order is completed, this column value will change to ' N' . Clients with IsNotified value 'N' will get the popup notification. The popup will open in every minute and elapse automatically after 10 seconds until the client closes it manually. This time IsNotified column value will change to 'Y'. So that particular client won’t get any popup notification further. The following classes added to ADempiere: •         org.compiere.process.Notifier.java •         org.compiere.process.PopupClient.java

System requirements for ADempiere ERP Implementation

 In a production environment such a simple installation may not be sufficient, especially when there are more than a handful of concurrent users. Performance demands will require more attention to the architecture of the installation. In a production environment, it is highly recommended to separate the servers, with the  Application Server  and  Database Server  on different machines. http://wiki.adempiere.net/System_Requirements COMPUTER HARDWARE - Recommended configuration for above 100 users Server : Server class hardware with Dual Socket 2.xG and 4 Core dedicated                             300GB 15K RAID Protected                             16 GB RAM, Page file on SSD Recommended.                             1Gbps Network, Microsoft Windows 2008R2+                             Any Backup Application to protect structured data Client (End users) :   iCore / Core2Duo / Pentium IV             Processor 2.8 MHz or above          

Port is already in use during the ADempiere Server Starts

     Some times, there will be few port conflicts with the ADempiere server with any other applications running on the same. We had a same kind conflict few days  back. Our internal server web port was 8080, as normal. and it was forward to 8888 for publishing the web application to the internet. During a server machine restart, the ADempiere server was reluctant to execute saying port 8080 is already in use.      The culprit was the Ammy Admin this time. For the remote access we were using the ammy admin in the server machine. So it was engaging the 8080 port.  There are TWO solutions for this.  1. Kill the application which engaging the web server port. 2. Change the web server port from 8080 to any other. The following are the simple steps to find out the engaged ports in the machine and killing those services. 1. netstat -b It will list down all the established communications and corresponding port. We will get to know the application details from this

ADempiere Tips

1. Application theft, Database theft KeyStore Password is  the answer for the application theft. If email has set, you will get an email alert if server runs. 2. User Privileges Several user and Role privileges for window, process, workflow etc. Personal Lock 3. Busy Connection issue Try to use the default DB.java methods to execute your query. If you want to use the PreparedStatement, be sure you have closed the ResultSet and Connection String using ' DB.close(rs,pstmt) ;' in the finally block of your try 4.  Default Reports in a window is not active? Then, check any Report is mapped in the field Process of corresponding Tab of that window. The connected report is invoked with that button with different print formats(if defined!). 5. Slow down issue    1. http://www.chuckboecking.com/adempiere-idempiere-performance-tuning-scale-ability/    2. http://www.chuckboecking.com/adempiere-idempiere-high-volume-warehouse-locators-update/ "Table Direc

MySQL Clustering

MySQL Cluster is a technology for automatically shared database management system. i.e this technology create two or more replicas of the same data base in different nodes.  Basically mysql clustering is asynchronous communication technology. The basics steps for establish mysql clustering is given below: Step 1:  Download supported version of mysql clustering installation zip file from       http://www.mysql.com/downloads/cluster/ Step 2:   Extract the zip file and copy the contents inside the folder to  c:\Users\user1\mysqlc Step 3: Run the command prompt window as administrator role, And execute the following commands for create clustering directories     C:\Users\user1> mkdir my_cluster my_cluster\ndb_data my_cluster\mysqld_data my_cluster\conf C:\Users\user1> mkdir my_cluster\mysqld_data\mysql my_cluster\mysqld_data\ndbinfo my_cluster\mysqld_data\performance_schema Step 4: Create configuration files for clustering; here I am using two systems

Schedule Backup using DBExport from Adempiere ERP in Windows OS

Scheduled Backup from Postgres using pgagent is possible , but the size of Backup file generated is very large compared to that generated from Adempiere using DbExport.bat. Creating Backup from adempiere by scheduling running of RUN_DBExport.bat from adempiere periodicaly using windows task scheduler is a viable solution. There are few bat files that need to be changed * E:\Adempiere\utils\myDBcopy.bat * E:\Adempiere\utils\RUN_DBExport.bat * E:\Adempiere\utils\postgresql\DBExport.bat In the above case  "E:\Adempiere\" is the path of Adempiere home where it was build. Make necessary changes as needed. NB: The environment variables are to be set properly in "Computer>properties>Advanced System Settings>Advanced>Environment variables "so as to make the following steps work. First file  to be changed is E:\Adempiere\utils\myDBcopy.bat Here change "set DATETIME=%date:~6,4%%date:~3,2%%date:~0,2%_%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%"

Deploy ADempiere reports as attachment

You can now deploy the jasper report source (.jrxml) or compile file (.jasper) as attachment  to the jasper report process . Use the special syntax  attachment:reportFileName  ( for e.g, attachment:standalone.jrxml ) to indicate the jasper report file that should be loaded from the process's attachment. If subreport and properties resource file is use, you need to upload those as attachment to the same process as well.