Enter test results
Enter parameter-level results, validate units and reference ranges, and save work for review.
What result entry is for
The result entry screen is where technicians enter measured or observed values for the tests attached to an order. The page organizes rows by sample and test, then stores each result with its unit, reference range, flag, metadata, and review status.
Use this page after the required samples exist and have moved far enough in the sample workflow. If no sample exists, Kashef blocks result saving and asks staff to create a sample first.
Results need a collected sample. While a sample is still pending collection, its result fields are locked and marked Test sample has not been collected yet; collect the sample first. A rejected sample is locked the same way and marked Test sample was rejected: collect a new sample to enter its results. A warning at the top of the sheet lists every locked sample, and if you try to save, those results are not saved.
Result entry and review follow your selected Kashef interface language, and Arabic uses a right-to-left layout. The rule is simple: anything that prints on the patient report stays in English. That covers the results table headers, test names, section and lab unit titles, values, units, flags, reference ranges, interpretation notes, culture organisms and antibiotics, and the unit manager signature. These tables read left to right, exactly like the printed report. Everything else, including buttons, statuses, hints, notes, comment tools, and the Override range editor, appears in your language. The standalone released-result sheet and PDF are English left-to-right documents.
Warnings at the top of the worksheet, including QC release requires attention, start collapsed. Select a warning heading to read its details. Errors and release blockers stay expanded; collapsing a warning does not remove its requirements.
Result rows
Each lab unit card is one table, exactly like that unit's page on the report. Each profile ordered for the patient has its own card after the unit's other tests, with the profile name under the unit name, just like its own page on the report. Rows are named like the report (for example "Lipid Profile - HDL"), with the sample barcode and type under the name. The card header shows how many rows are approved and, for managers, Approve all for the whole card. Each row has:
- Test or parameter name.
- Result entry field and, when available, the previous result for this patient.
- Flag (↑ High, ↓ Low, ↑↑/↓↓ Critical, * Abnormal, Normal).
- Unit and the applicable reference range.
- Status and, for managers, approve, reject, and select controls.
The card ends with the unit manager who will sign these results on the report. If no manager is set, add one in Catalog > Lab Units.
The row exists because the catalog defines the test and its parameters. If a needed parameter is missing, correct the catalog setup rather than typing extra information into notes.
How you enter each result
The entry field follows the reference range set for the test:
- Numeric Range and List of Ranges: type a number. The flag updates when you leave the field (press Enter or Tab, or click another field).
- List of Values: choose from the list, for example Negative or Positive. Values not marked Normal are flagged Abnormal. Findings that need an amount are listed with their grade, for example Uric Acid (+) for urine crystals or Entamoeba Histolytica (Few) for stool cysts.
- Free Text: write the result in the text area. No flag or range is shown.
- Calculated results: the value is filled in from other results and marked Calculated automatically. Click the field or the label to see which results it is worked out from. To type your own value, choose Enter manually; the result is then marked Entered manually, and Use calculated value switches it back. Entering a different number for a calculated test (not a parameter) requires its Allow Accountable Override setting. To record a text result instead, use the T button described below.
After you finish typing a numeric or text result, press Enter or Tab, or click outside the field to refresh flags and calculated rows for the same sample. Dropdown selections update immediately. This helps reduce manual interpretation mistakes, but it does not replace professional review.
Typing results quickly with Enter
On the result entry page and in the sample results window, press Enter after each value to move straight to the next result field, so you can type a whole sheet without the mouse. Shift+Enter goes back to the previous field. Locked, released and calculated fields are skipped. In a text result, Enter also moves to the next field; press Shift+Enter to start a new line inside the text.
Entering text instead of a number or selection
Select the small T button beside a result to replace its numeric field or dropdown with a text area. Type the complete result, for example <5, Unable to calculate, or Equivocal — repeat requested, then choose Save All Results (or Save results in the sample window). Text override identifies the changed field, and it stays in text mode when you reopen it. This also works for calculated results and CBC values; automatic calculations do not replace the overridden text.
Select the return arrow beside the field to use its default input again. Compatible values stay in the field; text that does not fit the number or dropdown is cleared so you can enter a valid value. Calculated rows return to automatic calculation. This affects this result only and does not change the test catalog. Released results and locked samples cannot be overridden. Changing an approved value sends it back for review.
Entering HOMA2 results
In the HOMA profile, enter fasting glucose and fasting insulin. Kashef then calculates HOMA2-IR, beta-cell function (%B), and insulin sensitivity (%S) with the Oxford HOMA2 model, giving the same results as the Oxford HOMA2 Calculator, so there is nothing to copy from another program. Insulin sensitivity is a percentage, not a QUICKI index.
HOMA2 needs fasting glucose between 54 and 450 mg/dL (3 to 25 mmol/L) and fasting insulin between about 2.9 and 57.6 µIU/mL (20 to 400 pmol/L). If a value is outside these limits, the HOMA2 results stay empty, as they would in the Oxford calculator. The HOMA method note fills the results comment automatically; review it and any reference intervals against your laboratory's method before release. You can edit the comment before releasing the results. To calculate HOMA2 in another test, add a HOMA2 formula to it from Catalog > Tests.
Attaching an image result
Some results are an image, such as the Hb electrophoresis graph. Their row shows Attach image instead of an input. Choose a PNG, JPG, GIF, WebP or BMP file up to 10 MB: Kashef saves it at once and shows a thumbnail. Click the thumbnail to open it full size, Replace image to choose another file, or Remove to delete it. Changing an approved image sends it back for approval, like any edited result. If the analyzer sends the graph, it appears by itself with Sent by the analyzer; an image you attached is never replaced by the analyzer.
On the report the image prints across the width of the test's table. Tests set to draw a curve, such as the glucose tolerance test, print a line chart of their results under the last row.
Values from analyzers
When an analyzer is connected, its values fill the sheet by themselves and show an analyzer icon beside them. Click the icon to see which analyzer sent the value, when, and the analyzer's own code, flag and range. Review these values like any other: they still need approval.
If you change an analyzer's value, the icon turns amber so reviewers can see it was edited by hand, and the analyzer will not overwrite your value if it sends the sample again. An approved result is never changed by an analyzer. See Analyzer results.
Entering a CBC
The CBC block follows the hematology report: Red Blood Cells, White Blood Cells, the Differential Leucocytic Count, and Platelets.
- Hematocrit, MCH, MCHC and Plateletcrit are calculated from the values you enter. If your analyzer or manual method gives a different value, choose Enter manually and type it.
- Enter the differential as percentages. For a blood film count, enter Stab and Segmented: Neutrophils is their total. When your analyzer reports Neutrophils directly, choose Enter manually on Neutrophils.
- The absolute count of each cell is calculated from WBC × % ÷ 100. To type the analyzer's absolute count instead, choose Enter manually on that cell.
- Values sent by an analyzer are kept as sent and are not recalculated.
- The bar under the differential shows the total of the percentages. The CBC cannot be released until they add up to 100% (±1%). Stab and Segmented are already inside Neutrophils, so they are not counted twice.
- Write blood film remarks in the CBC's results comment.
Entering a culture & sensitivity
Culture tests are entered on the same sheet, each in its own Microbiology — Culture & Sensitivity block laid out like the microbiology report page.
- Write the Sample source (for example, mid-stream urine) and pick the Sample type. Add the Direct microscopy / Gram stain finding when you have one, and the Culture conditions: pick a common one such as Aerobic, Anaerobic, CLED agar or MacConkey's agar, or type your own. Culture conditions print on the report under the culture result.
- Choose the Culture result: No growth, Growth, Mixed growth, or Contaminated sample. Nothing is saved until you choose one.
- For growth, pick the organism and type the Colony count. The organism's default antibiotic panel, or the culture test's primary panel, loads automatically. Use Load panel… or Add antibiotic for more drugs, and Add another organism for a second isolate.
- Set S, I, or R for every antibiotic and type the MIC when your method gives one.
The Report line under the block shows exactly what prints as the culture result, such as "Growth of Escherichia coli (>10^5 CFU/mL)". A positive culture is flagged abnormal. Saving keeps the whole culture with the order results.
Results comments
Each lab unit (and the "Other tests" group) has one Comment box under its table, each profile card has its own, and each CBC has its own under the platelets. The comment prints after those results on the patient report, just before the unit manager's signature. You can fill it in three ways and edit the text freely:
- Interpretation rules: when values match rules set in the tests' Interpretation Rules, the comment is filled with the rule texts automatically and updates as you change the values. From rules inserts it again after you edited the comment.
- Comment library: choose a ready comment from the list. These tests shows comments written for any test in the unit; General comments can be used on any test. Managers maintain the list in Catalog > Result Comments.
- Kashef AI: drafts a comment from the patient's age, sex, and medical history, the reason for tests, the current results with their flags, and the patient's previous results. Always read the draft and correct it before saving.
The comment is saved with Save All Results or with Save comment. A badge shows where the text came from, and "Not saved yet" reminds you to save. Once every result in the unit is released, its comment is locked.
Reference ranges and flags
Reference ranges come from the catalog. Kashef resolves the best matching range for the patient and test parameter, then flags the value as Normal, High, Low, Critical, or Abnormal depending on the range type.
If the wrong reference interval appears, do not force the result to look correct by changing the value. Check the patient age, gender, test parameter, and reference range setup. Incorrect setup should be corrected at the catalog or patient level so future orders work properly too.
Reference values always keep their scientific left-to-right order in result workspaces and printed reports. Read a numeric interval as the lower limit on the left and the upper limit on the right.
For a verified method-specific reference, such as a partner laboratory's interval, use a sample-specific override. A connected AI tool can inspect the current setting, preview numeric bounds and a unit or a free-text reference, then save your confirmed setting. Result-entry or approval permission is required. Free-text references suppress numeric flags when the result is saved. The setting applies only to the selected sample, test and parameter; it does not change the catalog or rewrite saved results. Inspect and save the result separately to capture the changed reference, then review any reset approval. You can preview restoring the catalog setting in the same way. Cultures, image inputs, released rows and cancelled orders are protected. Always provide the checked reference yourself; do not ask an AI tool to invent limits. If the result or range changes during review, inspect again.
Saving results
Use Save All Results to persist entered rows. Empty rows are skipped. Invalid values are skipped and reported in the notification. Existing result rows are updated when the payload changes, and revision metadata can be stored when an approved or released result is amended.
Save before asking a manager to review. An entered value that is still only visible in the form is not ready for approval.
When a parameter has no result
Sometimes one parameter of a multi-parameter test, such as a single CBC line, has no result for this sample. Instead of leaving the whole test stuck, skip that parameter:
- Choose Skip parameter under the parameter's result field.
- Write why it has no result, for example "Not reported by the analyzer for this sample".
- Choose Skip Parameter. It is saved straight away; your other unsaved values stay on the sheet.
The row then shows Skipped — not on report with the reason and who skipped it. A skipped parameter counts as complete: it is approved like any other row, the test can be released without it, and it does not appear on the patient report or in the patient portal. To enter a value after all, choose Enter a result instead on the row.
Skipping is available only for tests with more than one parameter, on a collected sample, before the result is released. A calculated parameter that depends on a skipped one stays empty, so skip it too or enter it manually.
Approval and rejection during entry
Users with review permission can approve a single row (✓), a whole test (Approve test), all entered rows (Approve All), or the rows they tick, and can reject a row (✗) or the selected rows with a note. Released rows are locked and cannot be edited. Rejection should explain what needs correction, such as instrument rerun required, value inconsistent with sample, missing dilution note, or wrong unit.
Released results cannot be rejected from this screen. If a released result needs correction, follow the released-result amendment process and involve a manager.
Moving to review and release
Save with Save All Results, then choose Review Results at the top to open the review worksheet for the same order. Result release is handled on Review Results using its existing Release controls. Enter Results has no release buttons.
To correct values, use Enter Results at the top of the review page, save your changes, and return to review. Hover a disabled Release button on the review page to see what is still missing. QC warnings, stale runs, or missing runs may require an authorized override reason.
For routed orders, result release is available only from the source branch context. This prevents a receiving or processing branch from releasing a report outside the proper ownership path.
Good entry habits
Enter values from the instrument, worksheet, or validated source exactly as approved by lab policy. Confirm units before saving. Watch critical flags before moving to the next sample. Use rejection notes for work that must be corrected, not for ordinary comments.
Do not release a group just because most rows look complete. Every required row must be entered (or skipped with a reason) and approved unless the workflow intentionally allows a partial release group.