BOM is one of the core contents in the ERP system. Its design is directly related to the use of ERP systems. I believe that in the ERP system design, both practicality and accuracy must be taken into account. In this article, I will talk about the considerations in the BOM design process.
1. Design of the Input Interface
In the design process of the bill of materials, I have always stressed the separation of the input interface and the query interface. The input interface emphasizes the input accuracy, while the query interface focuses on the practicality of the bill of materials. In short, the input interface should contain as few content as possible. In this case, the accuracy can be improved. For example, for a simple bill of materials, you only need to enter the part number and quantity. As shown in. You do not need to pay attention to more content. Such as price or supplier information.
First, verify the validity of the input content. For example, you can only enter numbers greater than 0 when entering the amount. If you enter a character or data smaller than 0, the system automatically reports an error. This method can improve the accuracy of system data. Good dream weaving
Second, exercise caution when using the default value. Some developers prefer to use a default value when developing the BOM module. For example, the default value is 1. They were designed with a good intention. If the usage is indeed 1, the workload of user input can be reduced to improve the efficiency of user input. However, there is a security risk. As shown in, the total usage of three materials is 1. Then we may wonder if the number of such 1 is accurate? Is it true that the user forgot to enter this amount or does the user actually use 1? In fact, based on my experience, if you set the default value, you can easily make an error here. If you forget to lose the default value, the system automatically uses the default value. Therefore, I suggest that you do not set the default value for the amount of materials in this bill unless most of the materials are 1. If the default value is not set and the user does not enter data, the system will prompt an error message when saving the data. This is also an important way to improve the accuracy of the material list. Dedecms.com
Third, review the bill of materials. The materials list must be reviewed after it is entered or changed. That is to say, only the approved bill of materials can be used by other users. In actual development, many developers will ignore this point. If the usage of a part in the BOM changes or a new part is added, the BOM status does not automatically change to unavailable. This also brings security risks. For example, if the part above is 100520, its usage is changed to 50. However, the data has not been confirmed after the change. The purchase plan is generated based on the new data in the procurement plan. In the future, if the author finds that this is his mistake, he will change the data back. In this case, a series of subsequent data errors will occur. Therefore, when designing a bill of materials, I will set a switch here. As long as the user changes the data in the item list (including changes in quantity and parts), the "red light" is displayed ". This bill of materials cannot be used in other modules. The "green light" will only be displayed after the user review ". That is, you can use this item list again. This design can minimize user misoperations.
2. query interface design
The above is an input interface design, which is simple and clear and conducive to user input. But for other users, the actual value is not great. For example, for the Finance Department, they may want to see a part to the price; for the purchasing department, they want to see the supplier information; for the warehouse, they want to know the raw material Category here, such as parts, packaging materials and auxiliary materials. This information is not reflected in the input interface of the bill of materials. If you need to know this information, you must go back to the product interface to query the specific information. Obviously, this is not conducive to the work of enterprise employees. In short, there is an input interface, which is not very valuable to users. In the design of the ERP system, the author designed a query interface for the material list. It is as follows:
First, display the usage. The usage here is not displayed in the form of quantity, but in the form of scores. This is mainly for the convenience of reading. For example, for packaging materials, such as a carton. Three products may be installed in a carton, so the usage is 0.33333. This is not easy for users to read. They prefer to use 1/3 to indicate this usage. In addition, there is no error during computation. If there are 30 products in total, how many cartons are needed? If the calculation is based on 0.3333, 9.9999 cartons are required. There will be errors in the middle, and you need to manually modify them. On the contrary, if 1/3 is used, the number calculated is 10. However, we would like to remind you that most databases currently do not support the score representation. Therefore, we may need to take a compromise here, that is, we need to use two fields to represent the numerator and denominator.
The second is the design of supplier fields. It is possible that one part has multiple suppliers. How can I display it here? Is the information of all suppliers displayed or the information of a specific supplier displayed? This is a problem to consider. If multiple vendors are displayed, two more methods are available. One is a supplier line. This is a bad thing. If a part has five suppliers, five lines are displayed here. This may cause misunderstanding because there are five identical parts in this product. So this method is broken. Another way is to reverse the column. Is to display the information of multiple suppliers in one row. This method is technically feasible. However, it does not make much sense in actual work. The recommended method here is to display suppliers according to a specific rule. For example, although a part may have multiple suppliers, an enterprise may designate one as the current supplier. The supplier information is used by default for subsequent procurement or calculation of material costs. In this material list, the information of the current supplier is displayed instead of the content of all suppliers. I think this may be more reasonable.
Third, the price issue. In the item list query, the price and individual cost are also included. Now the question is, what should I do if a product has multiple parts and they have different currencies? There are also two processing methods. First, bring out the price and the currency of the purchase. This allows users to see at a glance what currency they are buying. However, there is a defect, that is, if employees need to calculate the material cost, they also need to manually convert to this Bitcoin for accounting. Another way is to convert a query based on a specific exchange rate. That is to say, the single cost displayed on this interface is measured by the standard currency. This operation also has a defect, that is, how to determine the discount rate. Is it based on the current real-time exchange rate or the initial exchange rate? Generally, this information can be obtained based on the system settings.
Fourth, the category of raw materials. Most production enterprises divide raw materials into parts, packaging materials, and auxiliary materials. Then, they are placed in different warehouses based on different types of materials. To facilitate user query, the raw material category can be displayed in the interface. In addition, when calculating the material cost, you may also need to calculate the packaging material cost, parts cost, and their respective proportions in the cost. This interface is also required.