Category Archives: WebERP

Web-Based Timesheets for Project Management

What is project management? What it isn’t is a carefully crafted Gantt chart made to support a Project Charter and then forgotten about.

A cornerstone of effective project management is to understand how much effort has been expended and what tasks have been accomplished, and then to use that information to guide completion of the project and to publish status reports that can be trusted. Project management is a closed loop, one popular model is the PDCA (Plan Do Check Act) cycle.

Check refers not only to the expected output, but also to the process – whether resources are being consumed as expected, whether risks remain acceptable, if schedule and cost-to-complete forecasts are still reasonable and in budget, etc.

For small enterprises, collecting information on effort typically means timesheets. Project infrastructure can sometimes be leveraged for metrics, such as a software bug tracker or a sprint planning tool, but this generally requires a large number of datapoints before being accurate enough for project management purposes. For SMEs with relatively few team members on a project, the ubiquitous timesheet will be the simplest and least intrusive method of collecting project effort metrics. Since many organizations require timesheets anyway for financial accountability, the additional work to also collect information useful project management need not be significant if done in the right way.

I’m working on a series of blog posts on SME product development project management, and researched the state of open source timesheet applications for use in a strawman based on a Swift Construction Company product development project. You’ll find out later which application I selected, but until then here the potential candidates I found.

]project-open[

]project-open[ is a fully featured portfolio project management suite. However, unfortunately with great power also comes significant complexity and in brief use I was unable to create a simple project and submit a timesheet. Commercial support is available, and the project co-founder walked me through some impressive basic functionality in a personal webinar.

ProjeQtOr

ProjeQtOr is a fully featured project management suite with a twist – with ProjeQtOr you  also get “all the tools that will ease to ensure conformity to any Quality Management System, effortlessly and without any extra too”. This approach has a lot of merit. Issues are issues whether they relate to a product in production or the execution of a project task, and investigating a non-conformance is just as much a project as is development of a new product or upgrading IT infrastructure.

qdPM

I used qdPM for several months to record effort for a personal project. qdPM is a freemium-type product, and the community version is licensed using the Open Source license. It is a professional grade product.

To me, qdPM seemed to suit product support more than project management, and includes top-level menu items for Tickets, Discussions, and Software Versions. Entering time spent on a task is done by creating a comment, and traditional project management such as cost vs time are not readily available.

timeEdition

timeEdition appears best suited for a single individual to track their personal project time, rather than actual project management. Although it appears to be commercial proprietary software from the website, I found a source code on Sourceforge using an open source license (see timeEdition Sourceforge project).

TimeTracker

TimeTracker lives up to its claim of being a simple, easy to use, open source, web-based time tracking application. After experimenting with it for a while, my only complaints are that tasks are not inherently project-specific, which could make task management overwhelming if you have a large number of projects, each with a large number of tasks. However, projects specify which tasks they include, so the task list is still manageable from a user’s perspective. 

TimeTrex

TimeTrex has a flashy website, but at heart is a traditional time-card system for scheduling and tracking task-based employees, not managing projects. You can download TimeTrex Community v9.1.3 from the TimeTrex project on Sourceforge if you don’t want to provide your email address using the TimeTrex website.

Additional Applications

I found another of other applications as well, but for one reason or another I didn’t have the opportunity to investigate further, or on cursory glance they didn’t seem suitable (remember, my original goal was a simple easy to use timesheet, not necessarily project management).

Watch for the start of my posts on project management to learn which application I selected for a Swift Construction Company strawman.

Cheers!

Manufacturing using webERP

This post is #4 in a series on using webERP. Search for “webERP” to find other posts in the series and please visit the demo on dalescott.net (login as “auditor” with password “guest”).

Features of using webERP for manufacturing include:

  • Efficiency. Items, Vendors, Work Orders, etc. are managed within one controlled system. Fix a problem once and it’s fixed everywhere.
  • Visibility. A visible, trusted, change management process and a chain of truth.
  • Scalable. Readily scales with users, items, vendors and orders, and adapts as your processes change over time.

In this tutorial, I will explore using webERP for manufacturing using the Swift Construction Company’s development of the Aircraft Wireless as an example.

Goals

The goal of this exercise will be to:

  • Manufacture a sub-assembly with auto-issued child (input) items.

Manufacturing Cycle

The general manufacturing cycle in webERP is:

  • Enter a Work Order to manufacture an item according to its bill of materials (BOM).
  • Receive the finished manufactured items (the output from the work order) into stock. Input items listed on the bill of materials to auto-issue input items will be transacted to the work order at this time.
  • Issue any additional input items used in in the manufacturing process to the work order).
  • Close the work order.

I will be manufacturing quantity 10 of item 20000001-00, a custom electrical coil. The assembly tree is shown below. I covered how to configure an item as Manufactured, and how to create a BOM, in the Product Lifecycle Management using webERP tutorial.

20000001-00,"IND,830UH,AIRCRAFT WIRELESS"
|-- 90000001-00,"WIRE,MAGNET,38AWG,POLY"
|-- 90000002-00,"MAG,FERRITE ROD,1/4IN X 4IN,MATL=61"
\-- 90000003-00,"TAPE,ELECTRICAL,3/4"",BLUE,VINYL"

The manual process that will be followed is:

  • Manufacturing scheduler creates work order and assigns to assembly technician.
  • Assembly technician prints work order and kits required input materials from stock room. The technician initials each input item quantity as removed from stock.
  • Technician completes finished coils.
  • Technician initials work order as complete and returns to scheduler.
  • Scheduler receives the output items into the work order, which also causes the input items to be transferred from stock.
  • Scheduler closes work order.

TODO add swim-lane diagram(s).

TODO describe the accompanying parallel paperwork process.

Setup

If you have been following my previous tutorials,  there should be no further setup required. However, if not, it may be helpful tog review building a BOM in Product Lifecycle Management using webERP, and purchasing items in Purchasing Using webERP.

Create Work Order

A work order essentially converts the list of raw material required to manufacture an item (the Bill of Materials, or BOM) into one or more outputs. The work order can be printed and used to kit the necessary raw materials, and also used as a traveller for the Work in Process (WIP).

  • Create a new work order.
  • Enter optional Reference and Remark. TODO explain why
  • Search & select output item 20000001-00. Update.
  • Enter Qty 10 and comment for output 20000001-00. Update.

The work order can be printed and signed as record of kitting, and also as a record of additional input items to enter before closing the work order. A printed copy of the work order often travels with the WIP as identification (e.g. a traveler for a tote of material). Labels can also be printed for later attaching to the manufactured items. 

Main > Manufacturing > Transactions > Work Order Entry

If you search for work orders you will see that the new work work is in the system.

The  work order status shows demand for the raw materials needed to manufacture the inductor, which indicates they have not been issued.

You will also see that there is qty 10 of 20000001-00 on order from its item screen.

Receive Output Goods

When the output items have been manufactured they are received against the work order. For simplicity I will assume the manufacturing process was flawless, with no waste and all the manufactured items meet spec (see the manufacturing and test procedure filed in the Knowledge Base).  

Items listed on the BOM as auto-issue will issue to the work order at this time.

Process Manufactured Items Received

Close Work Order

Close the work order after all raw material has been issued to the work order and all manufactured items have been received against the work order. Review the work order costing,

Main > Manufacturing > Transactions > Select a Work Order > Select > Costing

and close the work order.

Summary

This completes the overview of manufacturing using webERP. 

webERP at Calgary EPTECH 2017

Search for “webERP” to find other posts on webERP, and please visit the demo on dalescott.net (login as “auditor” with password “guest”).

I will be at the EPTECH electronics exhibition in Calgary on March 9 to present webERP as the ideal platform for engineering PLM and to manage parts and orders for engineering prototyping and small-volume production. Watch for me if you’re going to be there, I would love to hear about the challenges facing you, and what strategies you have found work best.

Engineering teams need to manage part numbers for off-the-shelf and custom parts, and bills of materials for assemblies, including keeping track of selected COTS OEM part numbers and vendor information for purchasing, and the current revision of a custom part (and why it’s the current version). Engineering teams must also control source documents for custom parts, such as mechanical drawings, schematics and PCB fabrication files, and also often manage prototype and small-volume purchasing and manufacturing.

webERP is the ideal platform for an engineering team to organize and manage this information with trust and transparency, providing controlled access to anyone in the organization who needs it. webERP is a fully-featured enterprise-grade ERP system, but it is equally suitable for use at an engineering department level.

EPTECH is Canada’s only series of coast-to-coast national electronics shows, targeting electronics designers, engineers, technicians, technologists, purchasers, technical managers and researchers. A broad spectrum of the electronics industry will be on display, including passive and semiconductor devices, electro-mechanical components, test equipment, contract test and manufacturing services…. EPTECH is also a place where the local community can cross paths on an annual basis, the significance of which is often under-estimated. 

 

Purchasing using webERP

This post is #3 in a series on using webERP. Search for “webERP” to find other posts in the series and please visit the demo on dalescott.net (login as “auditor” with password “guest”).

Features of using webERP for purchasing include:

  • Efficiency. Items, Vendors, Purchase Orders, etc. are managed within one controlled system. Fix a problem once and it’s fixed everywhere.
  • Visibility. A visible, trusted, change management process and a chain of truth.
  • Scalable. Readily scales with users, items, vendors and orders, and adapts as your processes change over time.

I will explore using webERP for purchasing using the Swift Construction Company’s development of the Aircraft Wireless as an example.

Goals

The goals of this exercise are to:

  • Purchase items.
  • Receive goods into inventory.
  • Create a vendor invoice and pay the vendor.

Definitions

Here are some terms in the context they will be used here.

  • Vendor. Who you purchase goods or services from. Also called a Supplier
  • Purchase Order. A request to purchase sent to a vendor. If the purchase order is accepted by the vendor, it becomes a legally binding contract between the two parties.

Purchasing Cycle

The general purchasing cycle in webERP is:

  • Create and print purchase order. The order will be approved automatically if the creator has authorization permission, otherwise it will be queued for authorization. “Printing” is really a euphemism for issuing the order to the vendor, and an order must be printed before stock can be received against it.
  • Receive stock against purchase order.
    • Print a Goods Received Note and submit to the Accounts Payable department for matching to the vendor invoice.
    • Print and attach QA labels to the received goods.
  • Pay Vendor. Paying is generally made after goods receipt according to the purchase terms (e.g. “30 day”), however prepayment  is also common.
    • A Vendor Invoice must be created first and matched to the order and a goods receipt note before paying the vendor. 

The following diagram from the webERP manual illustrates the purchasing cycle.

TODO replace diagram with swim-lane drawings: (1) Create and Issue PO,  (2) Receive Stock, (3) Pay Vendor.

Setup

Purchase Order Authorization

I will give myself purchase order authorization so that purchase orders I create will be automatically approved (automatic authorization must be enabled in Main > Setup > System Parameters). Note that separate authorization is required for each currency used in a purchase order.

Main > Setup > Receivables/Payables Setup > Set Purchase Order Authorisation Levels

 

Bank Accounts

Some basic bank account information must be entered before recording payment to a vendor will be possible (because payment will be made from a bank account). I setup the basic chequing, saving and petty cash accounts, although only the chequing account will be used in this tutorial. 

Main > General Ledger > Maintenance >  Bank Accounts

In addition to entering the bank account information, I also need to give myself authorization to use the bank accounts. You can access bank account authorization either by user, or by bank account, depending on which is more convenient at the time. 

Main > General Ledger > Maintenance > User Authorized Bank Accounts

Order Items

Before an Aircraft Wireless system can be manufactured, the raw material will be required must be procured. The items that must  be ordered have been documented through the SCC’s Aircraft Wireless product lifecycle. I will show details for purchasing item 90000001-00, electrical wire which is part of sub-assembly item 20000001-00, a custom electrical inductor.

This is the assembly tree for item 20000001-00.

20000001-00,"IND,830UH,AIRCRAFT WIRELESS"
|-- 90000001-00,"WIRE,MAGNET,38AWG,POLY"
|-- 90000002-00,"MAG,FERRITE ROD,1/4IN X 4IN,MATL=61"
\-- 90000003-00,"TAPE,ELECTRICAL,3/4"",BLUE,VINYL"

The unit of measure for item 90000001-00 wire is centimeters (cm), which means the wire will be inventoried and consumed by length as measured in centimeters. However, the wire will be purchased by the spool, which is the vendor unit of measure (the datasheet for the wire indicates there are 19,300 feet of wire on a spool).

Issue Order

Start the order process by selecting the item to purchase, in this case item 90000001-00. There are several ways to initiate a purchase order and this is only one, you will learn others as you gain familiarity with webERP. 

Select Item 90000001-00, here I have filtered the list of items with the item stock code.

Items > Search > Select

Now that I have selected item 90000001-00, I can place an order for a spool.

The order defaults to quantity 1 (spool), which is what I need. The order is complete and I can select Process Order. If you need to change the quantity from the default 1, you must first select Update Order Lines, then process the order.

Since I have order authorization privileges, and the system is configured for automatic authorization, the order will be authorized automatically and I can next print the purchase order and/or enter a vendor invoice.

Printing the order creates a PDF document that can be saved or printed locally, or emailed to the vendor directly from webERP. More significantly, printing an order means to webERP that the order has been accepted by the vendor. 

It can happen sometimes that a verbal order is given to a vendor, and the paperwork is “cleaned-up” later.  In those situations, it is often the arrival of an invoice from a vendor that initiates creation of a purchase order. This is why there a command to create a vendor invoice is provided on the same screen an order can be printed from. However, I will be receiving the order before creating a vendor invoice.

You can see that an order has been issued by searching for outstanding purchase orders.

Main > Items > Select Item > Search Outstanding Purchase Orders

Receive Stock

Stock is received in webERP when ownership transfers from the vendor. I will start the receiving process by searching for outstanding orders for item 90000001-00. After selecting the appropriate purchase order, I will be able to Receive the order so long as it has been authorized and printed. 

Main > Items > Select > Search Outstanding Purchase Orders > Select > Receive

The Goods Received screen shows and allows the quantities received to be entered. The quantity in purchase units is shown together with the conversion factor from purchase units to the item’s unit of measure, and the receive quantity must be entered in the item’s unit of measure. 

Finally a Goods Received Note (GRN) can be printed for signing and sending to the Accounts Payable department for matching with the vendor invoice before payment.

You can also print QA labels for attaching to the received goods from the same screen.

If you select Item 90000001-00 (likely still selected if you access Main > Items), you will see that the quantity on hand now reflects the received order.

Pay Vendor

Create Vendor Invoice

A vendor invoice is created to record an that an invoice has been received from a vendor for goods or services provided. The vendor invoice is matched to the purchase order and to a goods receipt note before paying the vendor. One way to start the vendor invoice process is to search for the vendor that provided the invoice. After selecting the Vendor access Vendor Transactions > Enter a Vendor Invoice.

Main > Vendors > Select > Newark

The first step is to enter a reference identifier for the vendor invoice. Vendor invoice references for each vendor must be unique. Next click the Purchase Order button and match the vendor invoice to the purchase order. 

Main > Vendors > Vendor Transactions > Enter a Vendor Invoice > Purchase Order

Select the purchase order line item that the vendor invoice pertains to and add to the invoice.

After adding the order reference to the vendor invoice, return to invoice entry.

Add a comment and enter the invoice.

The vendor invoice has now been created. 

If desired, you could proceed with paying the invoice by using the Enter Payment command, but I will start over from the beginning in the next section.

Issue Vendor Payment

The vendor can be paid as soon after a purchase order has been printed, a goods receipt notice has been created, and a vendor invoice been created. However vendors will typically be paid based on operational procedures and vendor payment terms. One way to start the vendor payment process is to select the vendor again.

Main > Vendors > Select Newark

Use the Enter a Payment to, or Receipt from the Vendor command to access the Bank Account Payment Entry screen.

Enter the cheque reference and description.

If desired, you can enter a Supplier Narrative, Reference and Transaction Text for the supplier transaction payment. I will leave them blank and they will populate as indicated. Finally process the payment.

Optionally print the cheque and complete the payment.

The payment can be allocated from the final screen, but this is the end of the purchasing cycle for this example.

Rinse and Repeat

Now that item 90000001-00 has been dealt with, I will order sufficient quantities of 90000002-00 and 90000003-00 to manufacture custom inductor item 20000001-00 (which I will describe in an upcoming tutorial on manufacturing).

Reports

A variety of reports are available for managing the materials procurement process, indicating demand, or orders that need to be issued, or following up on orders already issued.

  • Show all suppliers for a particular item.
  • Show Where-Used for an item.

Change Happens

When an custom item is revised, it may impact on items already purchased and waiting to be received, or items which are about to be ordered:

  • Cancel POs if possible for items no longer required
  • Modify POs to mitigate cost, possibly reducing quantities, extending delivery dates, stopping vendor work and paying only for work performed to date, and modifying  vendor work to meet new requirements.

It can be helpful to proactively check for new part numbers, or new revisions of existing part numbers. Presumably they will need to be ordered eventually, and in the case of a revision may indicate changes coming for orders of current revisions.

Summary

This completes the overview of purchasing using webERP. A future tutorial will detail purchasing using a BOM (Bill of Materials) to save time. Instead of purchasing items individually, I will have webERP create purchase orders for all the items on a BOM.