Contents
1. What does this module actually do?2. The 6 concepts you must know2.1 ERP jargon ↔ plain language3. Getting to know the screen4. The example we will use throughout5. Run your first production (step by step)Prepare the stock cards and set the product typeWrite the recipe (the most important step)Enter the request (optional but useful)Plan it: "do I have enough material?"Open the work orderConfirm the production (this is where stock changes)Check the result6. Multi-level production (the chain)7. Waste, scrap, rework, quarantine — which is which?8. How is cost calculated?9. Warnings you will meet and what to do10. Your daily routine by role11. Frequently asked questions13. Work order priority and list layout (sort · filter)Three levels — and their badgesSorting and filters — which ones run on the server?14. The Program tab — the weekly production calendarThe four things on a card15. Delay projection — LATE versus WILL BE LATEHow "Estimated finish" is computed (the honest version)16. Capacity: load "up to today" versus "future-dated" loadWhere does the load come from? — the machine on the order header counts too17. From a sales order to a production request · from MRP to a purchase request"From sales orders" — on the Requests tab"Create PR" — from an MRP shortage to a purchase request18. Reading the MRP table: warehouse selector, min level, in transit, shortageChoose the warehouse first — netting is done from thereThe columns and the shortage formula19. An order's history: the revision log and the CANCEL flowCancelling an order — who may, and what happens?20. Shift: written on the confirmation, broken down in the report21. The Reports tab — how to read the six listingsScrap — "how much went to waste?"OEE/Downtime — availability and the downtime recordMaterial variance — "is the recipe lying?"Trend — production and unit cost month by monthOperator earnings — who earned what?22. Three conveniences on the confirmation: barcode issue, expiry date, same-day correctionIssuing material by barcodeExpiry date — for the batch you are producingA worker may reverse their own confirmation on the SAME DAY23. Approval gates: over-production · negative stock · component outside the recipeThe flow is always the sameThe three gates — their message, cause and setting24. Portal notifications — turning shop-floor reports into confirmations25. GlossaryQuality window (2026-08): FAI · Certificate · ECN · PPAP · NCR/CAPA · Sample · Tracing26. Versioned technical files in production27. "Check" on a confirmation: seeing every gate before writing28. "Changed by another user" (409) and the refresh flow29. Reversal: the sold-stock approval and returning the lot to the right row30. A revision preserves operations already started31. MRP got faster: the cache badge, "↻ fresh calculation", the code filter32. New badges in the order detail and the move of portal notifications33. The clean-room "lot quarantine" decision now really locks the lot34. Partial subcontract receipts and service invoice checksOwnership and quarantine in consigned productionCustomer-owned service fees and company stock valueTextile: liquor-ratio recipe, machine setting and colour–size matrix36. Producing missing sub-products automatically (background chain for large trees)37. Confirming from the floor: the MES operator terminalHelp › Production
Production Module — Guide from Scratch
This guide is written so that someone who has never used an ERP system can read it and run production on their own. Read it in order: first we build the mental model, then we tour the screen, and finally we run one real production job end to end.
Sections 1–3 (logic + concepts): 15 minutes of reading. Section 5 (your first production run): 30–40 minutes at the computer. Once you have done it, the same job takes 2 minutes.
1. What does this module actually do?
Picture a kitchen. You have flour, eggs and milk (these are raw materials). You have a recipe: "for 1 cake, 500 g flour and 3 eggs" (this is the bill of materials). A customer says "I need 10 cakes" (this is a request). The chef pins a ticket in the kitchen saying "we are making 10 cakes today" (this is the work order). In the evening 10 cakes come out and 5 kg of flour is gone (this is the confirmation).
The entire production module is just these five things. While tracking them, the system answers three questions automatically: (1) Which stock went down and by how much? (2) What is the unit cost of what I produced? (3) Which raw material lot, which machine and which operator produced this batch? Factories that try to keep these three answers by hand drown in spreadsheets — that is exactly why this system exists.
2. The 6 concepts you must know
Everything in the program is built on these six words. Do not memorise them — understand the logic:
Product type
Every stock card has a role: raw material (purchased), semi-finished (produced, then consumed again in production), finished good (produced and sold), scrap (waste from production).
Recipe / BOM
The list of "what and how much is needed to make 1 X" plus which workstation and how many minutes. It is versioned: if the recipe changes, the old version stays intact.
Request
A demand for production. It can come from a customer order or be opened internally ("let's build to stock"). It is not work yet — it is intent.
Work order
The actual production job: "this product, this quantity, drawing materials from this warehouse". It has a number and can be printed for the shop floor.
Confirmation
The moment you record "what actually happened". Stock changes exactly here. Without a confirmation, the production never happened as far as the system is concerned.
Lot / batch
A specific purchase or production group of the same material. It answers "which batch was this made from" — mandatory in food, rubber and defence work.
2.1 ERP jargon ↔ plain language
You will hear these terms from other systems and consultants. Here are the equivalents:
| Term you will hear | Equivalent in HNR | What it means |
|---|---|---|
| BOM (Bill of Materials) | Recipe | Material list |
| Routing | Operations (inside the recipe) | The sequence of work steps |
| MRP | Planning tab | The "what must I buy/produce" calculation |
| Explosion / patlatma | Explode button | Breaking a product down to its lowest raw material |
| Backflush | Automatic consumption on confirm | Deducting materials automatically from the recipe |
| WIP | Open work order | Work started but not finished |
| Scrap / Rework | Scrap / rework | Discarded goods / goods to be fixed |
3. Getting to know the screen
The Production window has nine standard tabs: Recipes, Requests, Planning, Program, Work Orders, Machines, Moulds, Staff and Reports. Users with quality permission also see SPC, Clean Room and Environment, for a total of twelve. Do not panic: in daily work you really use three of them (Requests, Planning, Work Orders). The rest are setup, specialist quality/environment work or reporting.
🗺 What each field does 4. The example we will use throughout
Let's be concrete: we will make a wooden chair. This example has three levels, because that is how most real factories work — first you make a part, then you assemble the product from parts.
Making the frame a separate card gives you: (1) its own stock balance, (2) reuse in other models, (3) a separate cost figure, (4) the option to send it to a subcontractor. Without the split, the chair recipe becomes a 40-line monster and nothing can be tracked separately.
5. Run your first production (step by step)
Follow the seven steps below in order. Check the result at the end of each step.
-
Prepare the stock cards and set the product type
You will work in the Stock window, not in Production. Every product and every component needs a stock card. On each card set the Product type field:
Card Product type Why SNDLY-01 finished Produced and sold to the customer ISKLT-01 semi-finished 1 Produced, then consumed by the chair AHSP-40, VIDA-05, TUTKAL-1, MINDR-01 raw material Purchased TALAS-01 scrap Waste from production (optional but recommended) ⚠ If you leave the product type emptyThe system still works, but the planning screen cannot tell "is this raw or semi-finished"; multi-level explosion may give wrong results. It takes two minutes — fill it in.
-
Write the recipe (the most important step)
Production → Recipes → New. A recipe has four parts. The map below shows what each field is for:
📷 Actual screen
🗺 What each field does Figure 4 — The four parts of the recipe formWhat does waste percentage mean?
If you say "we need 12 screws but 5% get dropped or damaged", you enter 5% waste and the system plans 12.6 screws, not 12. Waste is how you bring real-world loss into the plan. If unsure, leave it at 0 and update it after a few runs once you see the real figure.
💡 Do this twiceOur example needs two recipes: first
ISKLT-01(frame: wood + glue), thenSNDLY-01(chair: frame + cushion + screws). Write the lower level first — you only need the card to pick the frame as a component, but if it also has a recipe the planning chain builds itself. -
Enter the request (optional but useful)
Production → Requests → New. Here you record "who wants what, how much, by when". If there is a customer order, enter its number as well — so the question "which order is this production for" always has an answer.
Field Example Notes Product code SNDLY-01 What will be produced Quantity 10 How many Due date 2026-08-20 Once passed, a red "LATE" badge appears in the list Customer / order no ABC LTD / 12345 For traceability Status talep → onaylı Requests that are not approved are ignored by planning Is it an urgent one-off? Skip the request and start at step 5 (work order). Requests exist to collect many demands and plan them together.
-
Plan it: "do I have enough material?"
Production → Planning. Type the product code and quantity, then press Explode. The system opens the recipe all the way down and calculates "do I have it" for every line.
📷 Actual screen
🗺 What each field does Figure 5 — Explosion result and how to read itTwo buttons come out of this screen:
- Create order chain — opens the sub-orders for missing semi-finished items and the main order in one click, linked together (frame first, then chair).
- MRP — purchasing needs — gives the raw material shortages as a list; purchasing works from it.
💡 Capacity impact panelAlong with the explosion, a summary appears on the right: "if we take this job, how loaded will the machines be". This answers "should we accept the extra order?" — you see waiting minutes per machine and how many days of backlog exist.
-
Open the work order
Production → Work Orders → New (or "Create order chain" from planning). On the order you set: product, quantity, source warehouse (where materials are deducted from), target warehouse (where the product goes in), planned start and due date.
A new order starts in Open status. To hand it to the shop floor use the Traveler button in the order detail: it produces a printable sheet with the operation list, revision and signature boxes.
ℹ The recipe is "frozen" when the order opensThe moment the order opens, the current state of the recipe is copied into it. Even if you change the recipe tomorrow, this order still runs the old formula — work in progress never changes behind the operator's back. A new formula means a new order.
-
Confirm the production (this is where stock changes)
The job is done. Work Orders → select the order → Confirm. The confirmation form looks busy at first, but the logic is simple: how much came out, what was consumed, who did it.
📷 Actual screen
🗺 What each field does Figure 6 — The confirmation form and what it triggersActual consumption: the recipe "suggests", you decide
The confirmation form fills the component list from the recipe, but you can edit every line. If the recipe says 15 m of timber and you actually used 16.2 m, type 16.2. The real figure leaves stock and the cost is computed from the real figure. This single habit is what keeps the system from drifting into fiction.
-
Check the result
After confirming, open three places and look — this is how you see with your own eyes what the system did:
- Stock card → Movements: outgoing lines on the components, incoming line on the product; the order number appears in the description.
- Stock card → Cost: the unit cost of the product has been updated.
- Production → Reports: planned vs. actual time side by side, with the deviation %.
✅ CongratulationsYou have completed a full production cycle. From here it is repetition: request → plan → order → confirm. The remaining sections cover special situations.
6. Multi-level production (the chain)
In the chair example, if there is no frame in stock you need two orders and the sequence matters: the frame must be produced into stock first, then the chair consumes it. The "Create order chain" button opens both orders and links them (sub-order → parent order).
7. Waste, scrap, rework, quarantine — which is which?
The four words beginners mix up the most. Learn the difference once and it serves you forever:
| Concept | When | Stock effect | Example |
|---|---|---|---|
| Waste % | In the recipe, in advance | Increases the planned material | 3% of the fabric is lost when cutting |
| Scrap | On confirmation, actual | Enters stock as its own card | 0.5 kg sawdust — can be sold |
| Rework | On confirmation, fixable | Not counted as good; a nonconformance (NCR) record opens automatically | 2 chairs with runny varnish |
| Quarantine | On confirmation, pending QC | The product enters the QUARANTINE warehouse instead of the normal one | A rubber batch awaiting lab approval |
The system opens a record in Departments → NCR / MRB with the status "awaiting MRB". Quality/engineering then choose one of three dispositions: Rework, Scrap or Use as is. The record stays open until a decision is made — this is the first thing an auditor asks about.
8. How is cost calculated?
On every confirmation the unit cost of the product is recalculated and written to the stock card. The formula is simple:
Labour becomes 0 and the cost comes out lower than reality. If you price your sales on that figure you will lose money. Fill in the Staff tab once (name + hourly rate); picking them at confirmation takes 5 seconds.
Standard cost. What is described up to here is the actual cost formed at confirmation. To keep the product's "should-be" cost month by month from the recipe and routing, compare confirmations with it and split the difference into price, quantity, rate and efficiency items, see contribution margin and break-even, and post the period-end 7/A absorption entry, see the Standard Cost and Variance Analysis guide.
9. Warnings you will meet and what to do
The system deliberately blocks certain actions. These are not bugs, they are guard rails — fixing a bad production run afterwards costs far more than preventing it. Find your message below:
| Message | Meaning | Solution |
|---|---|---|
| "no active recipe" | No recipe written for this product, or it is not active | Write the recipe in the Recipes tab / tick the Active box |
| FAI_BEKLIYOR | The routing has a first-article step; one sample must be produced and approved by quality first | Confirm 1 piece → quality approves the FAI operation entering measurements → then run the series |
| FAI_OLCUM | FAI approval cannot be given without measurement values | Enter at least one measurement (name + actual value) while completing the operation |
| EKSI_ONAY | A component's stock would go negative with this confirmation | Either confirm the sub-order/receive goods first, or knowingly approve (if you really have it physically) |
| KALIP_BAKIM | The mould's shot counter passed its maintenance threshold | Service the mould and reset the counter in the Moulds tab |
| KALIP_KALIBRASYON CIHAZ_KALIBRASYON | The mould's/measuring device's calibration has expired | Renew the calibration and record the new date (Moulds / Departments → Devices) |
| COC_SERTIFIKA | This material acceptance requires a test certificate | Get the CoC/test report from the supplier and tick the certificate box on the acceptance decision |
| BLOKE_ACIK | The order is stuck: it has an open hold (the 12th production-confirmation gate). No confirmation can be written, no operation completed and "Started" cannot be pressed; undoing an operation is still allowed | Resolve the hold with a resolution note in Stuck Work. Only the system administrator can pass with a deliberate approval; a "hold" approval trace is written on the confirmation |
| YETKINLIK_YOK | The 13th confirmation gate: the operation's routing requires operator competence, but none of the personnel on the confirmation has a valid record at a sufficient level in the work-center competence matrix | Add a competent person to the confirmation or enter a record in the Competence matrix. The escape (yetkinlikOnay) belongs to the system administrator only; a "competence" approval trace is written on the confirmation |
| KALIP_OMUR | The work-center mould (or fixture/tool unit) used on the confirmation has used up its life, or the mould is in maintenance/inactive | There is no escape: complete the maintenance or refurbish the mould on the Mould life tab |
| "a confirmed order cannot be deleted" | The order has already moved stock | Use Cancel instead; if a confirmation was wrong, REVERSE it first |
10. Your daily routine by role
Planner — morning
1) Requests: approve new demands. 2) Planning: explode, see shortages, notify purchasing. 3) Create the order chains. 4) Work Orders: review late (red) orders.
Operator — end of shift
1) Open your order in Work Orders. 2) Complete the operation you finished. 3) Confirm: real quantity, real consumption, time, your name. 4) If something is defective, record rework/scrap.
Quality
1) Approve orders awaiting FAI (entering measurements). 2) Departments → NCR/MRB: decide on pending nonconformances. 3) Watch device calibration dates. 4) Release quarantined material.
Manager — weekly
1) Reports: examine products with a high plan↔actual deviation (the recipe time may be wrong). 2) Check cost breakdowns. 3) Look at machine loads. 4) Open/late order counts from the Cockpit.
11. Frequently asked questions
I changed the recipe — are open orders affected?
No. When an order is opened the recipe is copied into it (frozen). The change only affects orders opened afterwards. For a significant change, open a new version; the old version remains as a historical record.
I confirmed the wrong quantity — what now?
Use the REVERSE button next to that confirmation in the order detail. Stock, lots, serials and cost are rolled back with counter-entries and an audit trail remains (who, when). Requires admin rights. There is no hard delete — a deliberate design choice to protect the audit trail.
Must I produce the semi-finished item with a separate order?
Yes, if you made it a separate stock card. That is what lets you hold frames in stock on their own and see their cost separately. If you do not want separate tracking, do not create a card for the frame — put its components directly into the chair recipe (single level).
I will consume material from a different warehouse — how?
Two ways: (1) Set the source warehouse on the order (all components come from there). (2) Change the warehouse field on the individual component line in the confirmation form. The second way lets you draw different materials from different warehouses.
I send work to a subcontractor
Mark the operation in the recipe as subcontract and select the subcontractor account. In the order detail, Send to subcontractor moves the goods to the SUBCONTRACT warehouse (creating a dispatch note), and Receive back brings them back and adds the actual fee to the cost. This keeps "who currently holds what" visible.
Is it a problem if several people enter production at once?
No. Write operations are queued on the server; even if two people confirm at the same moment, stock stays consistent and numbers never collide. If you feel a slight delay, that queue is the reason — a deliberate trade-off for data integrity.
Who can see the Production window?
Permissions are enforced on the server. Deleting a recipe, reversing a confirmation, approving FAI and making an MRB decision require system administrator rights. A normal user can write recipes, open orders and enter confirmations.
13. Work order priority and list layout (sort · filter)
The most frequent question on a shop floor is: "Which job should go on the machine next?" The list used to be sorted newest-first only, so finding this morning's urgent job meant scanning by eye. Every work order now carries a priority, and the list can sort itself by it.
Three levels — and their badges
| Level | How it looks in the list | When to pick it |
|---|---|---|
| Normal | NO badge (plain row) | Everyday work — it has a due date and no trouble |
| High | Amber HIGH badge | Due date is close, or a customer is waiting |
| Urgent | Red URGENT badge; on the Program tab the card gets a red border | The line has stopped, the customer is at the door, a penalty applies |
In Production → Work Orders the Priority column is a drop-down for open and in-production orders. Click it and pick Normal / High / Urgent; the change is written to the server immediately and does not count as clicking the row (the order detail does not open). For completed and cancelled orders the same column only shows a badge.
Sorting and filters — which ones run on the server?
| Control | What it does | Where it runs |
|---|---|---|
| Sort: No (newest → oldest) | The default. The most recently opened order is on top. | Server |
| Sort: By due date (soonest first) | The nearest due date on top; orders without a due date sink to the bottom (an empty date is never treated as "early"). | Server |
| Sort: By priority (urgent first) | Urgent first, then High, then Normal. Within one level the rows are sorted by due date — so the urgent job with the nearest due date sits at the very top. | Server |
| Status filter | (all statuses) · Open · In production · Completed · Cancelled | Server |
| Filter by product code | Matches any code that contains what you typed (typing SNDLY brings SNDLY-01 and SNDLY-02). Applied when you press Enter or leave the box. | Server |
| The two date boxes | A range on the order's creation date (not on the due date!). The end day is included. | Server |
| The Late/Will be late checkbox | Keeps only orders carrying a LATE or WILL BE LATE badge (see section 15). | In the browser — it filters the rows already on screen |
The server returns at most 1000 orders at a time. In a large plant, if you hit that ceiling, narrow the status / date / code filter first and only then choose a sort order. Because the "Late/Will be late" checkbox runs in the browser, it cannot bring back an order the server never sent.
Status = Open, Sort = By priority, Late/Will be late ticked. What stays on screen is exactly the work that needs you today. As you clear them, untick the box and go back to the full list.
14. The Program tab — the weekly production calendar
The Work Orders list answers "what jobs exist"; the Program tab answers "which job on which day". The same orders are laid out on a calendar: This week and Next week, seven day-columns each, Monday to Sunday. The tab sits between Planning and Work Orders.
The four things on a card
Each small card in a day box carries: the order number (#128), the priority badge if any, the product code and the planned minutes. Orders past their due date also show LATE, and orders projected to miss it show WILL BE LATE. Hover the card and you get quantity, due date and machine on one line. Today's column has a blue background.
This screen is a view: you cannot move a card to another day. To reschedule a job, open the order and change its planned start date; the card appears on the new day at the next refresh. (A drag-and-drop Gantt library was deliberately not added — this program does not take on new third-party dependencies.)
The Unplanned (n) box under the calendar holds open orders that never got a planned start date. The fuller this box, the more the shop is running in "do whatever walks in" mode. Once a week, open these cards and give them a planned start; only then does the calendar tell the truth.
A more detailed plan: Production Schedule (APS). The Program tab answers "which job on which day" at day level. For a per-machine schedule at minute resolution (with shifts, breaks, maintenance, downtime and sequence-dependent setup time), scenario comparison, pinning by drag and drop and delivery promises to customers, see the Production Schedule (APS) guide. The plan of the approved official schedule appears in the work order details next to each operation as "Plan: machine · start – finish".
Work in progress, bottleneck and the weekly plan vs actual. To see the work in progress waiting between the operations of orders and its value, the queue in front of each machine, this week's overtime / extra shift need and last week's on-time order rate with delay reasons, see the WIP and Plan vs Actual guide. The window only reads production data; it does not change confirmation, MES or schedule records.
15. Delay projection — LATE versus WILL BE LATE
The two badges look alike but say completely different things. One reports the past, the other predicts the future.
| Badge | Meaning | Condition |
|---|---|---|
| Red LATE | It already happened. The due date has passed and the job is still open. | Due date < today and status Open/In production |
| Orange WILL BE LATE | Not late yet, but at this rate it will not finish on time. | Not LATE, has a due date, and estimated finish > due date |
The two badges never appear together: once an order is LATE it is no longer called WILL BE LATE (the past overrides the forecast). Both exist only on Open and In production orders; completed or cancelled orders get no badge.
How "Estimated finish" is computed (the honest version)
The Estimated finish column in the Work Orders list is the result of a simple four-step sum. It is an MVP calculation: the simplest version that is still useful. If you know what it does, you will read it correctly.
-
Find the order's machine
The Machine field on the order header is read. If it is filled, the machine's entire queue is taken (load up to today + future-dated load, in minutes). If it is empty, the calculation uses only this order's own remaining time.
-
Divide by the daily capacity
The Daily minutes on the machine card is used. If there is no card, or it says 0, 480 minutes (one shift) is assumed. The result is rounded up: 481 minutes is two days.
-
Pick the starting day
Whichever is later, today or the order's planned start, is used. So a job planned for next week is counted from its planned day, not from today.
-
Add business days (weekends skipped)
While adding the day count to the start, Saturdays and Sundays are not counted. The resulting date is what you see in the Estimated finish column.
Order #128: product SNDLY-01, machine MONTAJ-1, due 26 Aug. The MONTAJ-1 queue holds 2,400 min of work; the machine card says 480 min per day. 2,400 ÷ 480 = 5 days. Today is Friday 21 Aug; adding five business days (skipping the weekend) gives Friday 28 Aug. Because 28 Aug > 26 Aug the order gets the orange WILL BE LATE badge — it is not late yet, but it will be unless something changes.
Know the limits before you trust the number:
- The queue is shared, not divided. Every order on the same machine sees the same queue, so their estimated finishes come out close together. There is no "where am I in the line" calculation.
- Public holidays are unknown. Only Saturday and Sunday are skipped. In a holiday week the estimate stays optimistic.
- There is no shift calendar. A single "daily minutes" number per machine is used; double shifts on weekdays or half-day Saturdays are not modelled.
- Waiting for material is not counted. Even if raw material is in transit, the estimate does not know it — check the MRP screen (section 18) for shortages.
- Maintenance and breakdowns are not deducted. Even a machine marked "under maintenance" is assumed to burn its queue at the same rate.
(1) Move the order to another machine (the Machine field in the header) — a different queue means a different estimate. (2) Lower the priority of other jobs on that machine and pull this one forward. (3) Tell the customer early and update the due date. In all three cases the badge disappears by itself at the next refresh.
16. Capacity: load "up to today" versus "future-dated" load
On the Production → Machines screen every machine has a load indicator on the right. It used to be a single number, and jobs planned for next month inflated today's utilisation; a planner who said "MONTAJ-1 is full" and turned work away was in fact refusing an idle machine. The load is now written split in two.
| Indicator | What it counts |
|---|---|
| 1,200 min (the bold number) | Load up to today. Remaining time of open jobs whose planned start is today or earlier (including unplanned ones). In other words, "work standing in front of the machine right now". |
| +600 future (the faded text) | Future-dated load. Jobs whose planned start is tomorrow or later. It does not touch today's utilisation; it means "what is coming in the days ahead". |
| 2.5 days | How many days of work is waiting (load ÷ daily minutes). It appears only if the machine card has daily minutes. Above 5 days the bar underneath turns red. |
Where does the load come from? — the machine on the order header counts too
A machine's load is collected from two sources:
- Routing steps. The uncompleted operations of open orders. If the step has a cavity count, the time follows the fixed-cycle rule: round-up(remaining ÷ cavity) × time. If the machine column of an operation line is left empty, the machine on the order header is used — so load is not lost when someone writes the routing but forgets the machine column.
- Orders without a routing. For orders with no operation lines but a machine in the header, the remaining share of the planned time is loaded onto that machine. On a 100-piece, 500-minute order with 40 pieces confirmed, 300 minutes land on the machine.
On the Planning tab, type a code and a quantity and press Explode; under the tree a panel opens: Capacity impact — machine loads if this job is taken. Each line shows waiting min + min to be added and ≈ how many days; the badge on top says CAPACITY OK or WARNING. Steps that appear in the routing but have no machine card are listed separately at the bottom: their capacity cannot be tracked, so create the card on the Machines tab.
Matching relies on the machine card's code or name being exactly the text on the order/routing line (case is ignored). "MONTAJ 1" and "MONTAJ-1" are two different machines: the load splits and utilisation looks wrong. Copy machine names from the cards instead of typing them.
17. From a sales order to a production request · from MRP to a purchase request
In a factory the same information gets typed three times: the customer places an order, the planner copies the same line into a production request, and the buyer writes the missing raw material into a third notebook. The two buttons in this section remove that copying.
"From sales orders" — on the Requests tab
On Production → Requests, at the end of the form row there is a ⇩ From sales orders button. It opens a panel listing the producible lines of open sales orders. "Producible" means the stock card's product type is finished, semi-finished 1 or semi-finished 2. Raw materials and merchandise are not listed — those are bought, not produced.
| Panel column | Meaning |
|---|---|
| #123 | The sales order number — the request and the order stay linked to it |
| Quantity | This is the REMAINING quantity. As a line gets invoiced it drops off the order, so the number you see is always the part not yet shipped. |
| Customer | The customer of the order — copied into the request |
| Delivery date | It becomes the request's due date, then flows into the order and from there into the delay badges |
Pressing + Create request on a line creates, in one step, a request carrying: product code, remaining quantity, customer code, sales order number, due date = delivery date and the note "From sales order #123". You then pick that request from the "(plan from a request)" selector on the Planning tab and turn it into a work order; the request moves to "planned".
The panel does not check whether a request already exists for that line; every press creates a new one. To avoid producing the same order twice, check the Sales order no column in the Requests list after creating — if that number is already there, the job has been taken.
"Create PR" — from an MRP shortage to a purchase request
In the MRP table, every row with a shortage ends with a Create PR link. Clicking it files a request in the Departments → Purchasing book: code, the shortage quantity, unit, and "MRP shortage (date)" as the justification. The notification also shows the request number — quote that number to your buyer.
"Create PR" does not place a purchase order; it only records "we need this much of this item". Asking prices, collecting quotes and placing the order all happen on the Departments → Purchasing screen. Creating a request moves no stock either.
18. Reading the MRP table: warehouse selector, min level, in transit, shortage
The MRP — Purchasing needs button at the top right of the Planning tab explodes every open work order and every unplanned request in one pass and produces a single list: "which material am I short of, and by how much?" This is production's face turned towards purchasing.
Choose the warehouse first — netting is done from there
Immediately left of the MRP button there is a warehouse selector. The default is "(netting: grand total)": on-hand stock is taken from the sum of all warehouses. Pick a warehouse (say FABRIKA) and the calculation uses only that warehouse's stock row. The blue badge in the table header states which source was used: Netting: FABRIKA or Netting: grand total.
The columns and the shortage formula
| Column | Where it comes from |
|---|---|
| From orders | The not-yet-consumed part of the frozen component plan of open and in-production orders (plan − used). The recipe is copied and frozen when the order opens, so later recipe edits do not change this number. |
| From requests | The gross requirement obtained by multi-level explosion of requests that are not yet orders (requested/approved). A product's own stock is deducted during that explosion: no extra production is planned while finished goods sit on the shelf. |
| Gross | From orders + from requests. The total need "as if there were no stock at all". |
| In transit | The lines of your open PURCHASE orders. This is goods on their way; it is ADDED to availability so you do not order the same item twice. When the goods arrive on an invoice the line drops off and the column shrinks by itself. |
| Min level (+ a warehouse/general badge) | Safety stock. It is SUBTRACTED from availability so that buying what MRP suggests still leaves the safety buffer full. Single-source rule: if a warehouse is selected and a warehouse card exists for that warehouse–item pair (even with a value of zero) it wins and the badge reads warehouse; if there is no such record, the stock card's general min level is used and the badge reads general. |
| Available | on hand − reserved + in transit − min level. "Reserved" is what has been promised on open sales orders. |
| Shortage | gross − available; if negative it is written as 0. A red row means there is a shortage. The list is sorted by shortage, largest first, and the first 100 rows are shown. |
From orders 400, from requests 600 → gross 1,000. In the FABRIKA warehouse: on hand 300, reserved on open sales orders 50, in transit (open purchase order) 200, warehouse min level 100.
Available = 300 − 50 + 200 − 100 = 350. Shortage = 1,000 − 350 = 650 pcs.
Had you run the same query with "grand total", on-hand would have been the sum of every warehouse and the shortage would look smaller — but those screws may be sitting in a warehouse in another city. Select the warehouse you actually produce in.
If you selected a warehouse but the badge says general, then no warehouse-level min record was ever created for that item and the system fell back to the stock card's general value. If you want per-warehouse safety stock, create the record in the Warehouse module. The reverse holds too: when the badge says warehouse, the general min level on the stock card was not read at all for that row — the warehouse record wins even when it is zero.
19. An order's history: the revision log and the CANCEL flow
"This order was for 100, who made it 60?" — the answer now lives on the order's own screen. Open an order and you see a small box right under the header.
| Line | What it tells you |
|---|---|
| Last change | Who last saved the order and when. Priority changes, cancellation and ordinary edits all refresh this line. |
| Revision history (last 10) | Row by row: time · user · field · old → new. E.g. 21 Aug 09:14 · ayse · quantity · 100 → 60. |
The revision log keeps changes to quantity, due date and priority — the fields that change what was promised and in what order. Changes to notes, machine or warehouse are not logged; for those there is the "Last change" line and the Access trail. A quick priority change made from the list is logged too — even if you never opened the order.
Cancelling an order — who may, and what happens?
At the top right of the order detail there is a red Cancel button, shown only for open and in-production orders. It asks two questions: first a reason (leave it empty and nothing happens), then a confirmation. The reason is appended to the order's notes as [CANCELLED user: reason]; it is never deleted.
| State of the order | Who may cancel |
|---|---|
| No confirmation entered yet | The user who opened the order, or an administrator |
| At least one valid confirmation exists | Administrator only — the produced part stays on record; cancelling only means "we give up the remaining quantity" |
A cancelled order is not deleted. It stays in the list with a struck-through Cancelled badge, but from then on: it does not appear in open-order lists, it no longer feeds the "From orders" column of MRP, and it drops out of machine load. It stops creating phantom utilisation.
Confusing these three leaves stock wrong:
- Cancel — closes the order. It does NOT reverse confirmations already written: consumed material stays consumed, produced goods stay in stock.
- Reversal (storno) — undoes a single confirmation (reverse stock movement, lot return, serial voiding, cost rollback). See section 22.
- Delete — destroys the order permanently. Only for orders with no confirmation at all, and only by the user who opened it or an administrator; a full copy is written to the backup first (if the backup cannot be written, the deletion does not happen either). An order with confirmations cannot be deleted, it is cancelled instead.
20. Shift: written on the confirmation, broken down in the report
In a three-shift shop the same product, on the same machine, gives different results at different hours: the night shift scraps more, the morning shift starts slower. To see that, the confirmation has to record which shift it belongs to.
-
Pick "Shift" on the confirmation form
Open the order; in the Production confirmation panel, between the Machine and Note boxes, there is a Shift selector: (no shift) · 1 · 2 · 3. Every confirmation you save carries its own shift; it cannot be edited afterwards (changing it needs a reversal plus a new confirmation).
-
See the V1 badge in the confirmation history
In the Confirmation history box on the right of the order, each row gets a small V1 / V2 / V3 badge. No badge means that confirmation was entered without a shift.
-
Read the breakdown on Reports → Shift
Columns: Shift · Product · Quantity · Time (min) · Scrap · Rework. Each row is a shift–product pair. The "(no shift)" row collects confirmations entered without picking a shift — a large row here means the teams are not filling the field. The two date boxes on top set the period (last 30 days by default). Reversed confirmations are excluded from every row.
The program does not know which hours 1/2/3 stand for — you decide that. Write it on the shop board: "1 = 08–16, 2 = 16–24, 3 = 24–08". The day everyone means the same thing, the shift report becomes a management tool.
21. The Reports tab — how to read the six listings
On Production → Reports there is a row of pill buttons: Time · Shift · Scrap · OEE/Downtime · Material variance · Trend · Operator. The two date boxes on the right set the period for every listing except Time and Material variance (last 30 days by default).
Scrap — "how much went to waste?"
Rows per product: Produced · Scrap · Scrap value · Rework · Scrap rate %. Scrap value is the scrap quantity you entered on the confirmation multiplied by the cost on the scrap stock card — the money value of the waste. Scrap rate = scrap ÷ produced × 100; rows above 5% are printed in red. Rework has its own column: rework is not waste but goods to be fixed, and it does not enter the scrap rate.
OEE/Downtime — availability and the downtime record
This listing is fed from two sources: the times entered on confirmations and the downtimes you record on the Machines tab.
How to add a downtime: go to Production → Machines and click Add downtime on the machine's row. The small form has three fields: Duration (min) (required, greater than zero), Start (leave empty for "now") and Reason (free text: breakdown, setup, waiting for material…). Saved downtimes are listed at the bottom of the page under Downtime records and can be deleted from there.
Availability % = confirmed time ÷ (confirmed time + downtime) × 100. The Planned (min) column is simply the sum of those two numbers — it is not a calendar-based "planned running time".
Example: if MONTAJ-1 has 1,800 min on confirmations and 200 min of downtime in the period, planned is 2,000 min and availability = 1,800 ÷ 2,000 = 90% (green; anything below 85% prints red).
Classic OEE is three factors: availability × performance × quality. Only availability is computed here; performance (cycle speed) and quality are read separately from the Time and Scrap listings. Matching is also by text: the machine name typed on the confirmation and the one on the downtime record must be identical. If the machine field is left empty on a confirmation, those minutes collect in the "(no machine)" row.
Material variance — "is the recipe lying?"
It shows completed orders only: the plan frozen when the order opened, side by side with what was actually consumed. Columns: Order · Product · Component · Plan · Used · Variance % · Money impact.
- Variance % = (used − plan) ÷ plan × 100. Within ±2% is green (normal noise), positive variance is red (more was burned than planned), negative variance is amber (less was used — either a saving or material never issued; investigate both).
- Money impact = (used − plan) × the component card's cost. A positive number is money out of your pocket.
- This listing ignores the period filter and shows at most 500 rows, newest orders first.
Trend — production and unit cost month by month
Rows are broken down by month × product: Period · Product · Quantity · Total value · Average unit cost. Total value is the sum of cost × quantity over that month's confirmations; average unit cost is value ÷ quantity, a quantity-weighted average (small batches cannot skew it). Reading one product's rows month by month makes raw-material price rises and yield changes visible.
Operator earnings — who earned what?
The source is the worker lines you enter on confirmations. Columns: Person · Role · Pay type · Hours · Pieces · Confirmations · Production share · Earnings.
- Earnings = hours × hourly rate + pieces × piece rate.
- Production share = the quantity of the confirmations the person took part in, divided by the number of people on that confirmation. On a 90-piece confirmation with a crew of three, each gets 30; so adding up the shares does not double the real output.
- Reversed confirmations are excluded from every row.
The report uses the current hourly/piece rate on the person's card. If you raised rates during the period, past months appear calculated at the new rate. This listing is not a payroll source document: it measures production performance and feeds bonus discussions. Official pay is calculated in the Human Resources / Payroll module.
A listing may show an amber "… report could not be read" line. That is a status message, not a failure: the underlying production table has not been created in that company yet (no production has ever been run). Once the first recipe, order and confirmation exist, the tables are created and the warning disappears by itself.
22. Three conveniences on the confirmation: barcode issue, expiry date, same-day correction
Issuing material by barcode
When you click "+ Enter actual consumption (weighing / lot selection)" on the confirmation form, a barcode box and a Scan button appear above the lines. Scan the label with your reader (or type the code and press Enter):
| Situation | What happens |
|---|---|
| The code is already on a line | That line's quantity goes up by 1. The box clears, ready for the next scan. |
| The code is not on any line | A new line is added with quantity 1. The notification shows the card description too, so a wrong scan is obvious at once. |
| The code cannot be resolved | A red notification appears and no line changes. The label may belong to another company, or the barcode was never written on the stock card. |
A scan raises the line's quantity by one unit. For counted items (screws, hinges) that is exactly what you want: scan every box. But for items in kilograms, metres or litres, use the scan only to create the line, then type the scale reading into the quantity box. Otherwise a 25 kg sack is issued as "1 kg" and the cost comes out wrong.
Expiry date — for the batch you are producing
On the confirmation form, right next to the Batch no box there is an Expiry date box. The date you type there is written onto the lot record of the batch produced by this confirmation — it is the expiry date of the goods you are making. Food, chemical, pharmaceutical and paint shops should treat it as mandatory.
(1) The Expiry box on the confirmation form = the expiry date of the batch YOU ARE PRODUCING. (2) The lot selector on an actual-consumption line = the lot of the raw material YOU ARE USING and its expiry. If you pick no lot there, the system issues automatically by FEFO (first expiry, first out). If you manually pick an expired lot, the box turns red, a ⚠ appears in the list, and the program asks for explicit confirmation.
A worker may reverse their own confirmation on the SAME DAY
"I hit the wrong key" is the commonest mistake. The only remedy used to be calling an administrator; production stopped for a trivial correction. The rule is now:
| Who | Which confirmation | When |
|---|---|---|
| Administrator | Any | Any time |
| Ordinary user | Only the one they entered themselves | Only on the same calendar day (after midnight the door closes) |
The Reverse button in the confirmation history becomes active or disabled according to this rule. Hover the disabled one and it tells you why: "Reversal: administrator — or the user who entered it, on the same day". The gate genuinely lives on the server: forcing the button in the browser achieves nothing, the server refuses.
The confirmation is not deleted: it stays struck through with REVERSED next to it. When the worker exception is used, an "isci-iptal" mark is written into the confirmation's approvals field, and a who/when/which-IP entry goes into the Access trail. On the stock side everything is undone with reverse movements: components are returned into the warehouse, the product leaves it, scrap is removed, lots are given back, serial numbers are voided, and the stock card's cost falls back to the last valid confirmation.
23. Approval gates: over-production · negative stock · component outside the recipe
Some actions do quiet damage when done by mistake: confirming 60 pieces on a 10-piece order, pushing a warehouse negative, burning an item that is not in the recipe. These are not forbidden — sometimes they are genuinely needed. But they are not silent either: the program stops, states what is happening, and records who approved it.
The flow is always the same
-
You press "Confirm — post the stock"
The program sends no approval flags by itself; it submits the confirmation as it is.
-
The server stops and states the reason
The question on screen is the server's own sentence, numbers included. It is not a paraphrase but a description of what will actually happen. "Approve and confirm?" is appended.
-
If you approve, the same confirmation is resubmitted
This time with the matching approval flag. Several gates can fire on one confirmation (over-production and negative stock, say); the program asks each in turn, tries at most four times, and will not loop if the same gate returns twice — it shows the error instead. If you press Cancel, nothing at all is written: no stock moves.
-
The approval is stored on the confirmation and becomes a badge
An amber badge appears on that row in the confirmation history: over-production approved, negative stock approved, scrap approved or outside-recipe approved. Hovering it says "this confirmation passed a safety gate with an explicit approval". The name of whoever confirmed is already on the row.
The three gates — their message, cause and setting
| Gate | When it fires / what the message says |
|---|---|
| OVER-PRODUCTION (ASIM_ONAY_GEREKLI) | When the total confirmed quantity exceeds the order's planned quantity. The message shows planned, produced+requested and overrun +n. A company setting, stok.uretim_asim_tolerans_yuzde, defines a free overrun allowance (say 5%); an overrun inside the allowance passes without a question, beyond it needs approval. With no setting, every overrun is questioned. |
| NEGATIVE STOCK (EKSI_ONAY_GEREKLI) | When consuming a component would push its own warehouse negative. The message lists, item by item, which material, in which warehouse, how much is on hand and how much is needed, and it also lists the same item's stock in other warehouses — so you can choose a transfer instead of an approval. |
| OUTSIDE THE RECIPE (RECETE_DISI) | When an actual-consumption line carries a component code that is not in the order's frozen plan. The message names the code. The real purpose of this gate is to stop an operator who mistyped a code from burning some other material. |
A fourth gate works the same way: the scrap tolerance. If the scrap quantity you enter exceeds the company's allowance, the program asks again and the approval is stored with a scrap approved badge. (That gate and the company settings are covered in detail in the Safety gates guide.)
If the confirmed total on an order exceeds the plan, a red OVERRUN +n badge sits both in the Status column of the Work Orders list and in the order detail header. This is deliberate: when 60 pieces were confirmed on a 10-piece order, a screen that just said "60/10 · remaining 0 · Completed" let the mistake go unnoticed for months. When you see the badge, either the extra was really produced (fix the order) or a wrong confirmation was entered (reverse it).
24. Portal notifications — turning shop-floor reports into confirmations
In the staff portal (/personel) workers sign in with a payroll number and a PIN and report their daily output: "on this operation I produced this many good pieces and this much scrap". Those reports are not production records; they are statements awaiting approval. The bridge on the Work Orders tab lets you turn them into real confirmations quickly.
-
Open the box
Production → Work Orders, the ☰ Portal notifications button at the right end of the filter row. The number in brackets is how many reports await approval. The ↻ on the right refreshes the list.
-
Read the row
Each row shows: #report no · person · date-time · operation · product code · good · scrap · order no. If it says no order instead of a number, the worker did not link the report to a work order.
-
Press "Convert to confirmation"
If the report is linked to an order, that order opens and the confirmation form arrives pre-filled: Produced quantity = good pieces, Note = "Portal report #n · person · scrap n". Review the form — you add the shift, machine, worker lines and actual consumption yourself — then press Confirm as usual.
-
What to do with an unlinked report
The program shows an information message: "the report is not linked to a work order". Find and open the right order yourself, enter the confirmation by hand, and type the report number into the Note box — that keeps the link between the statement and the record.
A portal report creates no stock movement: no material is consumed, no product enters, no cost is computed. All of that happens only when you press Confirm. Also, "Convert to confirmation" does not approve the report itself: approving or rejecting portal statements happens on the Human Resources screen (piecework / production reports). Do the two jobs separately, otherwise the same output is either paid twice or not at all.
25. Glossary
| Turkish | English | Short description |
|---|---|---|
| Reçete | Recipe / BOM | Material + operation list |
| Bileşen | Component | Material consumed in the recipe |
| Operasyon / rota | Operation / routing | Work step and its sequence |
| İstek | Request | Demand for production |
| İş emri | Work order | The actual production job |
| Teyit | Confirmation | The "what really happened" record |
| Storno | Reversal | Auditable rollback of a confirmation |
| Patlatma | Explosion | Breaking a product down to raw materials |
| Fire | Waste % | Planned loss ratio |
| Hurda | Scrap | Waste from production (enters stock) |
| Rework | Rework | Defective goods to be fixed |
| Karantina | Quarantine | Goods awaiting a quality decision |
| Lot / parti | Lot / batch | A traceable group of goods |
| Fason | Subcontracting | Processing done by an outside workshop |
| FAI | First Article Inspection | First-article quality approval |
| NCR / MRB | Nonconformance / Material Review Board | Nonconformance record and its disposition |
| Traveler | Traveler / router sheet | The printed order that travels with the job |
| Öncelik | Priority | Normal / High / Urgent — drives list sorting |
| Gecikecek | Will be late | An order not yet late whose estimated finish passes the due date |
| Tahmini bitiş | Estimated finish | Machine queue ÷ daily capacity + business days |
| Plan başlangıcı | Planned start | The date that decides which day the order sits on in the Program calendar |
| İleri tarihli yük | Future-dated load | Machine load of jobs whose planned start is tomorrow or later |
| MRP | Material requirements planning | Exploding open orders and requests in bulk to produce a shortage list |
| Yoldaki | In transit | Expected receipts from open purchase orders (added to availability) |
| Min seviye | Min level (safety stock) | Safety stock; subtracted from availability (warehouse card → else stock card) |
| Vardiya | Shift | The 1/2/3 label written on a confirmation; the shift report reads it |
| Duruş | Downtime | Time a machine stood still (breakdown/setup/waiting) — entered by hand on Machines |
| Kullanılabilirlik | Availability | confirmed time ÷ (confirmed + downtime) — the simple OEE component |
| Hakediş | Earnings | hours × hourly rate + pieces × piece rate (at today's card rate) |
| Aşım | Overrun | Confirmed total exceeding the planned quantity; needs approval, shown as a badge |
| Portal bildirimi | Portal report | A production statement from the staff portal awaiting approval (not a confirmation) |
Quality window (2026-08): FAI · Certificate · ECN · PPAP · NCR/CAPA · Sample · Tracing
The "Quality" window in the Stock dock group is the screen for the server-side quality gates: FAI (first article approval), Certificate (CoC), ECN (recipe change), PPAP (customer file approval), NCR/CAPA, Sample and lot Tracing (the recall trail). Common rule: reading is open to everyone; writing needs an administrator OR an assigned user of the QUARANTINE warehouse. Full guide: the Quality page.
The Print button at the top right produces an A4-friendly version (navigation and buttons are hidden). Handing a printed copy to a new starter works better than asking them to read it on screen.
26. Versioned technical files in production
Attach technical drawings, specifications, work instructions, control plans, PFMEA, and process flows to the recipe; drawing/specification/contract to the request; and drawing, instruction, measurement, or test report to the work order. Attach calibration certificates and test reports to their machine/tool cards. Revision is mandatory for controlled documents and document/report number for reports.
Do not delete the old file for a new revision. Upload a new attachment with its revision and validity dates; verify lot, serial, and order links. See the Practical User Handbook for field details.
27. "Check" on a confirmation: seeing every gate before writing
The gates of section 23 (overrun, negative stock, off-recipe, scrap, expiry, scrap code, FAI, mould maintenance, lot block…) used to appear one at a time: you approved one, pressed confirm, and hit the next. The Check button next to "Confirm" in the order detail runs the same confirmation form dry: nothing is written, no number is taken, but every gate is collected in one list.
- Fill the confirmation form as usual (quantity, components, scrap, lot). Press Check.
- Read the result panel: blue gates have an escape ("approved during Confirm" — e.g. overrun, negative stock, off-recipe), red gates have none (FAI pending, invalid scrap code, lot blocked, mould in maintenance) — the confirmation cannot be written until they are fixed. Approvals you already ticked on the form appear struck through.
- The panel also shows the consumption (how much of which component, from which lot, what is on hand, anything completed from the plan), the cost estimate (material, labour, subcontract, scrap value, unit cost) and warnings. If it says "passes", press Confirm; the same body is now written.
Gate 12 — BLOKE_ACIK: if the order has an open hold (a stuck-work record), this gate also appears in the Check list. Its escape belongs to the system administrator only; for other users the way forward is to resolve the hold with a resolution note in Stuck Work.
Gate 13 — YETKINLIK_YOK: if the routing requires operator competence, at least one of the personnel on the confirmation must have a valid record at a sufficient level in the work-center competence matrix. Its escape belongs to the system administrator only. In the same list, the no-escape KALIP_OMUR also appears if the work-center mould has used up its life. Details: Work Centers › At production confirmation.
Permission: the same as writing a confirmation. The dry run does not enter the write queue and does not hold up colleagues confirming at the same moment. A data error (unknown card, unknown lot) still returns 422 in a dry run and appears in the list as an "ERROR" gate.
28. "Changed by another user" (409) and the refresh flow
When two planners open the same order (or two engineers the same recipe) and both press Save, the last one used to win and the first one's change vanished silently. Now a version stamp arrives when the order or recipe is read and is sent back on save; if it does not match, the server replies KAYIT_DEGISTI (409). The program then rereads the current record, reopens the form with fresh values and shows "The order was changed by another user — reapply your changes". This is not data loss; it is the opposite.
Second brake — the lock: if another web session has locked the order for editing, Save returns HNR_KILITLI (409) and names who holds it. The lock sees web sessions only; a lock in the desktop program is not visible here — lasting correctness comes from the version stamp above, the lock is an extra warning. Machine card: saving "new" a second time with the same code now stops with KAYIT_VAR (409) (a double click no longer duplicates the card); to update the existing card use the "update if exists" option on the form.
29. Reversal: the sold-stock approval and returning the lot to the right row
When reversing a confirmation (storno), the product leaves the warehouse and the components return. But if the product has already been sold there is nothing to remove; the program used to remove it anyway and push the warehouse negative. Now, if the product warehouse holds less than the confirmed quantity, the reversal stops with STORNO_SATIS_ONAY_GEREKLI (422) and states the numbers ("3 in warehouse, reversing 5"). Visible escape: answering yes to "Reverse anyway?" writes the approval into the confirmation trace as satis-onay.
Stock, lots, serials and cost commit together. A selected lot is used exclusively; without a selection, eligible lots are chosen by expiry date. Reversal requires the original source-lot identity and the same confirmation's output batch. Reconcile missing historical traces first; another batch is never selected automatically. Preview does not reserve stock; saving rechecks current conditions.
30. A revision preserves operations already started
Editing an open order (due date, quantity, note) used to rebuild the operation list from scratch: completed operations and the FAI approval fell back to "pending" and the second confirmation got stuck on FAI_BEKLIYOR. Now operations whose status is not pending (done, at subcontractor) stay in place; only pending ones are rebuilt from the route, and the revision log records "N started ops preserved". You no longer need to send code and quantity just to change the due date.
Escape: if the product code changes the route really will be reset; the program then stops with REVIZYON_ONAY_GEREKLI (422). If you deliberately want "yes, reset the route", tick the approval box — the log records "revizyonOnay: route reset". The order's full revision history is no longer limited to the last 10 entries in the detail: the "Revisions" list gives the complete list, oldest to newest.
31. MRP got faster: the cache badge, "↻ fresh calculation", the code filter
The MRP table of section 18 took 9–20 seconds with 200 open requests and 500 orders, and timed out when ten people looked at once. The calculation was rewritten: bulk reads instead of six queries per row, a recipe cache and a result cache. The badge in the table header shows how many seconds ago the result was calculated; the cache drops by itself when one of the underlying tables changes or after 15 seconds. If you say "I just wrote an invoice and don't see it", press ↻ fresh calculation. Simultaneous calls wait for a single calculation — ten people trigger one.
New filter and paging: narrowing by code or description and choosing page/count work on the cached copy and do not trigger a recalculation. The calculation rules (netting, reservation, in transit, minimum level) are exactly the same — only the speed changed.
32. New badges in the order detail and the move of portal notifications
Estimated finish / WILL BE LATE now appears in the order detail header too, not only in the list (same source as the queue simulation in section 15). FAI badge: "FAI: SAMPLE" means the sample confirmation is in and the quality decision is pending; "FAI APPROVAL PENDING" means no series confirmation can be entered until quality approves. The detail also shows remaining to overrun (how many more pieces can be confirmed before the plan-overrun tolerance).
Portal notifications (section 24) used to be read from HR's endpoint; a production supervisor got "HR manager role required". The panel is now tied to the production module's own endpoint: the production right is enough. The view and the "Convert to confirmation" flow are unchanged.
33. The clean-room "lot quarantine" decision now really locks the lot
When you saw a violation on a clean-room measurement and decided lot_karantina, only the decision used to be written; the lot stayed open for sales, confirmation and transfer. Now the decision blocks the production lots tied to the measurement's order (those opened after the measurement time): FEFO in sales skips the lot and lists it as "blocked" in the response, manual lot selection on a confirmation stops with LOT_BLOKE (shown as a red gate in Check), and a selected lot on a transfer instruction or shipment is refused. Every lock and release is written to the lot movement log.
If no lot is found: the decision stops with LOT_BULUNAMADI (not written) — either choose the lots to block yourself via the "lotlar" list, or tick the "no production at that time" escape (lotYok); the response carries it as a warning. Releasing: if the previous decision was lot_karantina and you correct the measurement to accept or measurement error (with correction approval), only the locks placed by this measurement are released; another decision's lock stays. For the blocked-lot list in the Quality window and the manual block/release endpoints see the Quality guide.
34. Partial subcontract receipts and service invoice checks
Open: Production → Work orders → order → subcontract operation. Physical shipment tracking is available at Level 1 without adding certificate requirements. Separately enabled company/order quality-package rules still apply.
- Select stock, source warehouse, quantity and an optional lot. Enter scrap tolerance as a percentage, for example 100 M with 5%. Goods move to an operation-specific FS-… warehouse.
- Enter only the quantity received on each partial delivery: returning 40 M leaves 60 M open. If the next receipt is 58 M usable plus 2 M scrap, enter these separately and explain the scrap. A blank receipt quantity means remaining balance minus scrap. Actual unit cost is optional and cannot be negative.
- Scrap is segregated in FSH-…, not deleted. Expand Subcontract receipt history to check movement document numbers, users, dates and reasons.
- With purchase-invoice permission, expand Subcontract service invoice reconciliation. Select the supplier's service/labour invoice line and choose Check. Its unit must match the shipped stock's base unit.
- For 98 M received at a unit cost of 2, the expected amount is 196; 2 M scrap is excluded. Values are in base currency excluding VAT. Open balances, price differences or insufficient invoice quantity block saving.
- Save a valid reconciliation. Later invoice edits mark it out of date. Cancel a wrong match with a reason, check again and save a new match; history remains.
Limit: This is not a payment order, bank instruction or certified electronic signature. Resolve excess scrap, disputed prices and unallocated header charges with the responsible person; this screen does not approve payment.
Ownership and quarantine in consigned production
- Create source and finished-goods warehouses as customer-owned, using the same customer account. If quarantine is needed, create a separate quarantine-type warehouse with that owner.
- Select the owner as the production-request customer and link the order to that request. Source and destination must belong to that customer. Linked owners cannot be changed; create new records for a different owner.
- Check Consigned goods owner in the order. When quarantining, select Production quarantine warehouse. A mandatory-quarantine recipe also uses this selection; selecting a warehouse alone does not activate quarantine.
- Components, finished goods and scrap retain the owner. Company or other-customer warehouses are rejected before stock writes, even with negative-stock or off-recipe approval. Quality release also requires the same owner.
No certificate requirement is added to Level 1. For service-invoice matching and company inventory valuation, also use the financial section below. Mixing company and customer materials in one order is not yet supported by this flow.
Customer-owned service fees and company stock value
Users with sales-invoice permission can expand Customer-owned production service fee in the order. Customer goods retain physical quantity and lots but do not enter company inventory value or product-card cost. Labour, subcontracting and explicitly entered other service costs have a separate ledger, committed or reversed together with stock. Missing financial identity in old confirmations requires reconciliation; no amount or owner is inferred.
For a completed order, select the customer's actual sales service invoice line and enter the contractual unit fee in base currency excluding VAT. Check the customer, direction, unit, quantity, exchange rate, discount, VAT and available allocation, then save. Every invoice line must be a service or labour item. An active link blocks invoice or delivery-note changes, deletion and production reversal; cancel the link with a reason first. Linking does not create payments or additional account movements. Budget and active-capital inventory estimates exclude customer goods, including goods in transit. Mixed ownership and historical value repair remain outside this flow.
Textile: liquor-ratio recipe, machine setting and colour–size matrix
In a dyehouse the chemical quantity is not fixed: a recipe line is written as owf (percentage of fabric weight) or g/L (grams per litre of bath), and the bath volume follows from the liquor ratio (L/kg) on the recipe header. The calculation lives in one place; material requirements, the frozen copy on the order, the cost breakdown and confirmation consumption all read the same figure. Older recipes with no calculation type count as fixed and behave exactly as before. Production › Machines holds the diameter, gauge, needle and feeder counts plus the yarn lot on the creel; the lot-mismatch gate works while lot tracking is on in Production Preferences and has a visible escape. Order › Matrix splits an order of 1,000 into colour × size rows; on an order with a matrix a confirmation must declare the breakdown. Details: Textile guide.
If the agreed waste tolerance is exceeded on a subcontract shipment the return is no longer locked: the excess passes with a visible approval, the trace is stored on the return record, and the excess waste and its value (excess waste × the material's current smart unit cost) appear in subcontract reconciliation as the "amount to be deducted from the invoice". This deduction creates no automatic ledger entry.
36. Producing missing sub-products automatically (background chain for large trees)
Where? Production → Work Orders → order → Check. If some components of the product you are confirming are semi-finished and out of stock, the dry run lists them branch by branch under Missing sub-products. The Produce missing sub-products automatically button opens and confirms a work order for every branch, then writes the confirmation of the original order.
Small plan, single step. If the chain is small (measured by the number of requirement lines in the plan) everything is written in one transaction and you see the result immediately — the behaviour is the same as before.
Large plan, background chain. In a real automotive tree the chain can open thousands of work orders (measured: 2,224 sub orders for a product with 11,536 codes, about 6 minutes). If such a chain ran in one transaction the browser would time out and every write in the company would queue behind it for that whole time. So when the plan is large the chain runs in the background: the dry run shows the note "Large plan — the chain will run IN THE BACKGROUND", and when you press the button a Sub-production chain box opens immediately and updates the progress (done/total, percentage, elapsed time). While the chain runs, you and others can carry on with normal work.
⚠ If it stops midway, what was produced is not rolled back. Every sub work order in the background chain is written and completed on its own. If the chain hits a gate, fails, or is stopped with Request cancel, the sub orders produced until then are real production and are not rolled back — the semi-finished goods are in stock. When you plan the same order again these produced items drop out of the plan by themselves and the chain continues from where it left off, shorter. If the chain hit a gate (for example missing raw material), remove the cause first and then press Check again.
Other rules. Only ONE sub-production chain runs per company at a time; trying to start a second one is refused, naming the order whose chain is running. If the same request is sent twice by mistake, no new chain is opened — the progress of the existing job is shown. If stock or the recipe changes after the dry run, the plan stamp no longer matches and the chain stops saying plan changed — press Check again. If raw material is missing, automatic production is not started at all; create a production request and procure it instead. On very large trees the plan is protected by an upper limit; if it is exceeded you get the "recipe tree too large" warning and must split the plan (or have your administrator raise the limit).
37. Confirming from the floor: the MES operator terminal
The operator can start and finish the job from the MES terminal at the machine. Finishing the last operation writes the production confirmation described on this page with the same gates; intermediate operations do not write a confirmation. Downtime goes into the machine downtime record that APS reads, and live OEE uses the same measure as the machine utilisation report in Reports.