Worked Examples

Quote to Ship in EDGEBIC: A Custom Order's Complete Journey

User Solutions TeamUser Solutions Team
|
11 min read

The quote to ship manufacturing process is one continuous chain of decisions: price it, promise it, schedule it, run it, prove it. Most shops break that chain across a spreadsheet, an ERP, a whiteboard, and someone's memory. This walkthrough follows a single custom order through EDGEBIC by User Solutions from the first sales call to the on-time delivery report, with every dollar and every timestamp shown. It is part of our worked examples series, where the product is judged by its arithmetic.

The cast: Hartmann Precision GmbH asks for 20 custom titanium brackets (CTB-200), requested for Friday, July 10. The bracket is a make-to-order product with a three-step routing: sawing, milling, and final inspection. Raw material costs $85 per unit. The sales rep wants a 30 percent markup.

Routing stepWork centerRun time per pieceSetupQueue afterShop rate
10 SawSaw-1 (1 instance)0.25 h0.5 h0$45/h
20 MillMill-1 (2 instances)1.50 h1.0 h2 h$85/h
30 InspectQC-Bay (1 instance)0.20 h00$35/h

All three work centers run a single day shift, Monday to Friday, 08:00 to 16:00. The clock starts Monday, July 6.

Stage 1: The Quote Exists Before Anything Else Does

The sales rep opens Quoting, creates a new quote for Hartmann, picks the CTB-200, enters quantity 20 and the requested Friday date, and leaves the unit price blank. The system auto-numbers it Q0001 and saves it in Draft status. At this moment there is no order, no schedule, and no commitment: just a numbered record of what the customer asked for.

That ordering matters. The price is not typed in from experience or copied from the last similar job. It will be computed, and the computation comes next.

Stage 2: Simulation Prices the Job With the Real Engine

The rep clicks Run Simulation. Behind that button, EDGEBIC does something worth understanding precisely:

  1. It creates a temporary order for 20 brackets, invisible to the shop floor.
  2. It runs the same finite capacity scheduling engine used for live schedules, placing the temporary order against the current, real load on Saw-1, Mill-1, and QC-Bay.
  3. It reads the resulting dates and hours off the in-memory schedule.
  4. It deletes the temporary order. Nothing from the simulation is written to the committed schedule.

This is what-if promising done honestly: the promise date comes from actual capacity math, but the shop plan is never disturbed. Simulate ten times, commit zero times.

The simulation returns a three-day plan. Sawing takes 0.25 x 20 + 0.5 = 5.5 hours and runs Monday morning. Milling takes 1.50 x 20 + 1.0 = 31 hours, but Mill-1 has two instances working in parallel, so the wall-clock time is roughly half that; the step spans Monday afternoon into Wednesday. Inspection takes 4 hours and closes out Wednesday afternoon. Estimated finish: Thursday midday at the latest, comfortably inside the Friday request.

The costing rolls up from the same numbers:

Cost elementCalculationAmount
Saw labor5.5 h x $45$247.50
Mill labor31 h x $85$2,635.00
Inspection labor4 h x $35$140.00
Labor total$3,022.50
Material$85 x 20$1,700.00
Total cost$4,722.50

Stage 3: Markup Becomes a Price, and Margin Tells the Truth

Because the unit price was left blank, the system applies the markup for the rep: total cost times 1.30, divided by 20 units, rounded to $306.96 per bracket. Total price: $6,139.20.

Here is the arithmetic detail that trips up half the quoting spreadsheets in industry. The markup was 30 percent, but the margin is 23.1 percent. Profit is $6,139.20 minus $4,722.50 = $1,416.70, and margin is profit divided by price, not by cost. EDGEBIC surfaces both figures on the quote so nobody discovers the difference at year end. The rep reviews the summary (40.5 total hours, three-day lead time, $306.96 per unit, 23.1 percent margin), flips the quote to Submitted, and emails it to Hartmann.

For a deeper look at the quoting side on its own, including scenario comparison and manual cost overrides, see the EDGEBIC quoting guide.

Stage 4: Acceptance Converts the Quote Into an Order, With Guards

Hartmann replies with a purchase order. The rep opens Q0001 and clicks Convert to Order. Three guards run before anything is created: the quote must not already be converted, no existing order may already point at this quote, and the generated job number must be unique. Then one manufacturing order appears, carrying everything the quote learned:

  • Job number MO-Q0001, quantity 20, due date July 10 (the customer's requested date).
  • The estimated cost ($4,722.50), labor and material split, hours (40.5), markup, and unit price, all copied onto the order.
  • A permanent link back to quote Q0001, so the pricing history stays attached to the job forever.

The quote's status flips to Converted. Click Convert again and the system refuses with a clear message; no duplicate order can exist. The chain from customer conversation to shop commitment is now one unbroken record.

Stage 5: The Planner Schedules It for Real

The planner selects MO-Q0001 and reschedules. This time the engine's output is committed: three operation rows land in the database, one per routing step.

OperationWork centerScheduled startScheduled end
SawSaw-1Mon Jul 6, 08:00Mon Jul 6, 13:30
MillMill-1Mon Jul 6, 13:30Wed Jul 8, 12:30
InspectQC-BayWed Jul 8, 14:30Wed Jul 8, 18:30

Notice the inspection start time. Milling ends at 12:30, but the routing carries a 2-hour queue after milling (parts cool, move, and wait for the inspector), so inspection's earliest start is 14:30. That gap is routing data made visible, the same forward scheduling cascade that placed every step. Daily hour breakdowns are written alongside: 5.5 planned hours for the saw on Monday, milling's 31 hours spread across Monday (2.5), Tuesday (16 across both instances), and Wednesday (12.5), and inspection's 4 hours on Wednesday.

Stage 6: The Shop Floor Takes Over at the Kiosk

Monday at 08:03 the saw operator opens the shop-floor kiosk, taps the job, and punches Start. Two things happen: an open punch record begins accumulating time under the operator's name, and the operation's actual start is stamped at 08:03, marked as user-entered. Planned dates and actual dates now live side by side on the same operation.

At 13:35 the operator taps Complete Operation. The punch closes with 5.53 actual hours, the day's actual is written against Monday's planned 5.5, and the actual end is stamped 13:35. Plan said 5.5 hours; the floor delivered 5.53. That two-minute honesty is the foundation everything downstream stands on.

Milling repeats the pattern on both instances, finishing Wednesday at 12:28, slightly ahead of its 12:30 plan. Then comes the guard worth knowing about: when the inspection operator tries to punch in, the kiosk first checks that the prior routing step (milling) has a completed actual. It does, so the punch proceeds at 14:35. If milling had not been closed out, the kiosk would have stopped the inspector and flagged the missing prior actuals instead of letting the record fall out of sequence. Inspection completes at 16:30 Wednesday. The full kiosk workflow, including what operators see and what supervisors can correct, is covered in the shop-floor guide.

Stage 7: Mark Complete, With an Audit Trail

All three steps show green. The planner opens the job and clicks Mark Complete. The order's status flips to Completed with the completion date, and an audit row is written to the schedule change log: who closed it, when, and why ("All steps verified"). Every status change of consequence leaves this kind of trail.

One deliberate non-event deserves a sentence: no inventory receipt is posted. The CTB-200 is make-to-order and not stocked, so completed brackets ship straight to Hartmann rather than into a bin. If this had been a stocked make-to-stock product, the same completion click would have posted a +20 receipt into the inventory ledger automatically. The system knows the difference from the product's build policy, not from anyone remembering.

Stage 8: The Report That Closes the Loop

At month end the manager runs the on-time delivery report for July. For MO-Q0001 it takes the latest actual end across all operations (July 8, 16:30), compares it to the due date (July 10), and computes one day early. Status: On time. Monthly rollup: 1 job completed, 1 on time, 100 percent on-time delivery.

The number is credible because of where it came from: operator punches, not planner promises. This is the same discipline behind the heritage results User Solutions has published since 1991, including GE Railcar moving from 30 percent to 90 percent on-time shipping and the USS Nimitz overhaul tracking 26,000+ tasks. The measurement chain (punch, actual, report) is what makes such numbers auditable rather than anecdotal.

The Whole Journey on One Page

StageRecord created or changedKey number
Quote createdQuote Q0001, DraftQty 20, due Jul 10
SimulationNothing persisted40.5 h, $4,722.50 cost, 3-day lead
Markup appliedQuote priced$306.96/unit, 23.1% margin
ConvertedOrder MO-Q0001, quote ConvertedCost and price copied, link kept
Scheduled3 operations committedSat within Jul 6 to Jul 8
Kiosk actualsPunches + actual datesSaw 5.53 h actual vs 5.5 planned
Marked completeStatus Completed + audit logNo stock receipt (make-to-order)
ReportOn-time delivery100%, 1 day early

Variations Worth Trying

The customer wants it two days earlier. Change the requested date to Wednesday and re-simulate. The engine returns a Thursday finish, exposing a one-day overrun before anything is promised. The rep either negotiates the date or simulates an overtime scenario at higher utilization to see whether the job fits.

Engineering discovers the alloy costs more. Enter a manual cost override of $3,742.50 material-plus-labor and reapply the markup; the unit price recomputes to $243.26 while the original simulated estimate stays visible for comparison.

No routing exists yet. Run Simulation refuses cleanly with a message that no bill of routing exists for the product, rather than guessing. A quote without a routing prices nothing, which is the correct behavior for a system that refuses to invent numbers.

If you are starting from an empty system and wondering how the master data behind this walkthrough gets built in the first place, the greenfield setup walkthrough covers exactly that, from the first unit of measure to the first committed schedule. And if your quotes start life as sales orders in an ERP, EDGEBIC's Excel, CSV, and database import-export masks carry them in without retyping.

Want to see your own product priced this way? Contact US and bring one routing and one rate sheet: we will simulate a live quote with your numbers.

A quote simulation runs the same finite capacity scheduling engine as a live schedule but keeps the result entirely in memory. EDGEBIC creates a temporary order, schedules it against current work center load, reads off the dates and hours, then deletes the temporary order. No schedule rows survive in the database, so a sales rep can simulate as often as needed without disturbing the committed shop plan.

Markup and margin measure the same profit against different bases. Markup is applied to cost; margin is profit divided by price. In this walkthrough a 30 percent markup on a $4,722.50 cost produces a $6,139.20 price and $1,416.70 of profit, which is a 23.1 percent margin. A quote screen should show both numbers so sales can reason in either direction.

Not without acknowledging it. EDGEBIC's shop-floor kiosk enforces a prior-step gate: when an operator tries to start an operation, the system checks that the preceding routing step has recorded its completion. In this walkthrough the inspection operator can only punch in on the quality step after the milling step has an actual end time logged, which keeps the actuals record coherent.

The on-time delivery report compares each completed order's latest actual end time against its due date. In this walkthrough the last operation finished on July 8 at 16:30 against a July 10 due date, so the report classifies the job as on time with one day to spare and shows 100 percent on-time delivery for the month. The report is built from operator-logged actuals, not from planned dates.

Expert Q&A: Deep Dive

Q: A customer wants 20 custom brackets by Friday and I need a price today. How fast can I get a defensible number?

A: Minutes, if your routing and rates exist. In this walkthrough the simulation prices 20 brackets from three routing steps: sawing at 5.5 hours x $45, milling at 31 hours x $85, and inspection at 4 hours x $35, totaling $3,022.50 of labor plus $1,700 of material. With a 30 percent markup the unit price comes out at $306.96 and the simulated finish lands Thursday midday against the Friday request. The number is defensible because it came from the same engine that will actually schedule the job.

Q: What stops someone from converting the same quote into two orders?

A: Three guards fire before an order is created: the quote's status cannot already be Converted, no existing order may already reference that quote, and the generated job number must not already exist. In this walkthrough a second click on Convert to Order stops with the message that the quote is already marked as Converted, and no duplicate order appears. The order also carries the quote's ID permanently, so the pricing history stays attached to the job.

Frequently Asked Questions

Ready to Transform Your Production Scheduling?

User Solutions has been helping manufacturers optimize their production schedules for over 35 years. One-time license, 5-day implementation.

User Solutions Team

User Solutions Team

Manufacturing Software Experts

User Solutions has been developing production planning and scheduling software for manufacturers since 1991. Our team combines 35+ years of manufacturing software expertise with deep industry knowledge to help factories optimize their operations.

Let's Solve Your Challenges Together