نرم افزار مدیریت انبار | انبارداری
تعریف ساده فرآیندهای ورود/خروج، ریالیسازی لحظهای، ردیابی بارکد و اتصال به موبایل انبار.
امکانات نرمافزار انبار و حسابداری انبار «برآیند»
گزارشها و کنترلها
- انواع گزارشات مربوط به تاریخ عملیات و مدیریت انبار.
- تولید گزارشات از اسناد نهایی.
- گزارش کالاهای بدون گردش طی چند سال.
- گزارش موجودی انبارها بر اساس آخرین قیمت خرید.
- گزارش مغایرت انبارگردانی.
- انواع گزارشات کاردکس مقداری-ریالی انبار.
- گردش اقلام انبار به تفکیک حساب.
- سیستم جامع گزارشساز سهبعدی (ماتریسی).
بههمراه کاردکس مقداری/ریالی، مانده موجودی، نقطهٔ سفارش، موجودی منفی، گزارش تاریخ مصرف/سریال و گزارشهای سفارشی.
چرا نرمافزار انبار فکرگستر؟
- کاهش خطای انسانی با بارکد و ردیابی سریال/مکان
- سریعسازی انبارگردانی با موبایل (آنلاین/آفلاین)
- ریالیسازی لحظهای و یکپارچگی با حسابداری
- انعطاف در روشهای قیمتگذاری و تبدیل واحد
یکپارچگیها و لینکهای مرتبط
ارتباط انبار با BPMS (فرآیندها + جداول/نگاشت)
هدف: استانداردسازی گردشها، حذف دوبارهکاری و اتصال خودکار به مالی/KPI. برای معرفی کلی BPMS به صفحهٔ /bpms لینک دهید.
فرآیندهای کلیدی
- شروع: تأیید سفارش خرید (PO Approved)
- ثبت رسید موقت + اسکن سریال/پارت/بارکد
- در صورت نیاز QC → ایجاد پرونده و ثبت نتیجه
- تبدیل رسید موقت به ورود قطعی
- Putaway: انتقال به قفسه/ستون مقصد
- شروع: تأیید سفارش فروش
- رزرو موجودی (ATP/MRP)
- پیکینگ + اسکن/تأیید کمّی
- پکینگ/برچسب و حواله خروج
- پایان: کاهش موجودی + ارسال به مالی
- شروع: آزادسازی دستور تولید
- درخواست مواد به انبار
- حواله مصرف به خط تولید
- ثبت رسید نیمهساخته/محصول نهایی
- انتقال بین انبارها: حواله مبدأ → ورود مقصد
- Cycle Count: برنامهریزی، شمارش، محاسبه مغایرت
- تأیید مغایرت و ثبت سند تعدیل
جداول/نگاشت داده (الگوی پیشنهادی)
| جدول | کلیدها/فیلدهای مهم | توضیحات |
|---|---|---|
| wh_warehouse | warehouse_id (PK), code, name | انبارها |
| wh_location | location_id (PK), warehouse_id (FK), code, type | زون/ناحیه |
| wh_bin | bin_id (PK), location_id (FK), code, capacity | قفسه/ستون |
| wh_item | item_id (PK), sku, name, uom_id, is_lot, is_serial | کالا |
| wh_uom | uom_id (PK), code, name, ratio_base | واحد سنجش |
| wh_item_uom | item_id (FK), uom_id (FK), ratio | تبدیل واحدها |
| wh_stock | warehouse_id, bin_id, item_id, lot_id?, serial_id?, qty_onhand, qty_reserved | موجودی تفکیکی |
| wh_lot | lot_id (PK), item_id (FK), lot_no, exp_date | پارت/سری ساخت |
| wh_serial | serial_id (PK), item_id (FK), serial_no | سریال منحصربهفرد |
| گروه | فیلدهای کلیدی | توضیحات |
|---|---|---|
| wh_receipt_h / wh_receipt_l | receipt_id, source, status, bpm_instance_id | رسیدها (سربرگ/ریز) |
| wh_issue_h / wh_issue_l | issue_id, type, status | حواله/خروج |
| wh_transfer_h / wh_transfer_l | source_wh, target_wh | انتقال |
| wh_adjust_h / wh_adjust_l | adj_id, reason | تعدیلات (انبارگردانی) |
| wh_qc_h / wh_qc_l | receipt_id, spec_id, result | کنترل کیفیت |
| gl_interface | module, doc_no, amount, date, status | ارسال به مالی |
ارتباط انبار با موبایل (فرآیند + وبسرویس)
برای معرفی اپ مرتبط میتوانید به /mobile/production-assistant لینک دهید.
سناریوهای موبایل
جریان کاری نمونه (پیکینگ)
- دریافت تسکهای کاربر (Task Fetch)
- اسکن SKU/Serial/Lot و تطبیق با سطر
- تأیید مقدار و محل (Bin)
- اتمام تسک → صدور حواله/بهروزرسانی موجودی
وبسرویس/اتصال (REST + JWT)
تمام درخواستها با هدر Authorization: Bearer <JWT> ارسال میشوند.
POST /api/auth/login
Content-Type: application/json
{ "username":"op1", "password":"•••", "device_id":"MOB-001" }
GET /api/wh/tasks?assignee=me&state=assigned
GET /api/wh/items?query=sku:ABC123|name:پیچ
GET /api/wh/receipts/{id}/lines
POST /api/wh/receipts/{id}/confirm
{ "lines":[{"line_no":1,"qty":10,"bin_id":502,"lot":"L-2409"}] }
GET /api/wh/picks/{id}
POST /api/wh/picks/{id}/scan
{ "line_no":2,"barcode":"(01)076…(10)L-2409(21)S123","qty":4,"bin_id":305 }
POST /api/wh/transfers
{ "from_bin":101,"to_bin":205,"item_id":77,"qty":12,"lot":"L-2409" }
POST /api/wh/cycle-count/sessions
{ "warehouse_id":1,"zone":"A1","bins":[101,102,103] }
POST /api/wh/cycle-count/{session_id}/submit
{ "counts":[{"bin_id":101,"item_id":77,"qty_physical":98}] }
- Offline-first: صف آفلاین + همگامسازی؛ هشدار مغایرت در تعارض.
- بارکد GS1 (AIهای 01,10,21…) + کنترل Check Digit و انقضا.
- امنیت: انقضای توکن، Refresh Token، بایند به device_id، ثبت لاگ.
- Realtime (اختیاری): WebSocket/SSE برای آپدیت تسکها.
ارتباط انبار با BOS (سیستمعامل کسبوکار)
نقش BOS
- تعریف اهداف/سیاستها: حداقل سطح خدمت، سقف موجودی، ROP، قواعد FEFO/FIFO.
- حاکمیت و RACI: نقشها (مدیر انبار، QC، مالی، فروش، تولید) و مسئولیتها.
- CAPA: ایجاد اقدام اصلاحی وقتی KPI از آستانه خارج شود (از طریق BPMS).
- داشبورد تجمیعی KPI و هزینهها (یکپارچه با مالی/انبار).
نقاط اتصال BOS ↔ WMS
| جریان | از | به | توضیح |
|---|---|---|---|
| قوانین موجودی (Min/Max/ROP) | BOS | WMS | تولید سفارشات پیشنهادی، هشدار کمبود |
| هشدار انحراف KPI | WMS | BOS/BPMS | ایجاد مشکل/اقدام اصلاحی خودکار |
| داشبورد KPI/هزینه | WMS/Accounting | BOS | نمای بلادرنگ شاخصها و ارزش موجودی |
| اجرای SOP | BOS | WMS/BPMS | الصاق دستورالعملها داخل تسکها |
شاخصهای KPI در انبار (تعریف، جداول، محاسبه)
تعاریف و اهداف
| کد | عنوان KPI | فرمول/تعریف | دوره | هدف نمونه |
|---|---|---|---|---|
| ITR | گردش موجودی | COGS / میانگین موجودی | ماه/فصل/سال | ≥ 6 |
| DIO | روزهای نگهداری موجودی | 365 / ITR | ماه/سال | ≤ 60 روز |
| FillRate | نرخ تامین سفارش | اقلام تحویلشده بهموقع / کل اقلام سفارششده | ماهانه | ≥ 95% |
| Stockout% | نرخ کمبود | دفعات کمبود / کل درخواستها | ماهانه | ≤ 2% |
| PickAcc% | دقت پیک | سطرهای پیک صحیح / کل سطرها | ماهانه | ≥ 99.5% |
| Dock2Stock(h) | زمان داک تا انبارش | ⌀(Putaway - Dock) | هفتگی | ≤ 4h |
| InvAccuracy% | دقت موجودی | 1 - |Σ(مغایرت)|/Σ(موجودی ثبتشده) | ماهانه | ≥ 99% |
| CycleCoverage% | پوشش شمارش | اقلام/محلهای شمارششده / کل | ماهانه | ≥ 20% |
| Shrinkage% | ضایعات/کسری | (ثبتشده - واقعی)/ثبتشده | فصلی | ≤ 0.3% |
| CarryingCost% | هزینه نگهداری | هزینه نگهداری سالانه / ارزش متوسط موجودی | سالانه | ≤ 18% |
نمونه محاسبات (اعداد فرضی)
| شاخص | مقدار |
|---|---|
| COGS سال | 120,000,000,000 ریال |
| میانگین موجودی | 18,000,000,000 ریال |
| ITR | 6.67 (=120/18) |
| DIO | 54.7 روز (=365/6.67) |
| دقت پیک | 19,900/20,000 → 99.5% |
جداول دادهٔ ورودی (پیشنهادی)
| جدول | فیلدهای شاخص | مصرف KPI |
|---|---|---|
| wh_stock_snapshots | date, item_id, onhand_value | میانگین موجودی |
| fin_cogs_daily | date, amount | COGS روزانه |
| wh_orders | type(SO/PO), promised_at, delivered_at, lines_ok, lines_all | Fill Rate |
| wh_pick_logs | task_id, line_id, is_correct | Pick Accuracy |
| wh_dock_logs | receipt_id, dock_time, putaway_time | Dock-to-Stock |
| wh_ccount_results | bin_id, item_id, qty_sys, qty_phy | Inventory Accuracy |
کوئریهای نمونه
-- ITR: Inventory Turnover (سالانه)
SELECT SUM(c.amount) / NULLIF(AVG(s.onhand_value),0) AS itr
FROM fin_cogs_daily c
JOIN wh_stock_snapshots s ON s.date BETWEEN c.date - INTERVAL '30 day' AND c.date + INTERVAL '30 day'
WHERE c.date BETWEEN :from AND :to;
-- DIO: Days Inventory Outstanding
SELECT 365.0 / :itr AS dio;
-- Pick Accuracy
SELECT 100.0 * SUM(CASE WHEN is_correct THEN 1 ELSE 0 END) / COUNT(*) AS pick_accuracy_pct
FROM wh_pick_logs
WHERE date BETWEEN :from AND :to;
-- Dock-to-Stock (hours)
SELECT AVG(EXTRACT(EPOCH FROM (putaway_time - dock_time)))/3600 AS dock_to_stock_hours
FROM wh_dock_logs
WHERE dock_time BETWEEN :from AND :to;
-- Inventory Accuracy
SELECT 100.0 * (1 - SUM(ABS(qty_sys - qty_phy)) / NULLIF(SUM(NULLIF(qty_sys,0)),0)) AS inv_accuracy_pct
FROM wh_ccount_results
WHERE date BETWEEN :from AND :to;
برای معرفی KPIها و مانیتورینگ در BOS میتوانید به /article/kpi و /article/bos-kpi-monitoring لینک دهید.
سؤالات متداول
آیا سیستم از بارکد و ردیابی سریال پشتیبانی میکند؟
بله؛ صدور/چاپ بارکد، ردیابی سریال، و موقعیت مکانی (ستون/قفسه/طبقه) پشتیبانی میشود.
اتصال به موبایل انبار چطور است؟
با اپلیکیشن موبایل، دریافت/ارسال، شمارش، و انبارگردانی بهصورت آنلاین/آفلاین انجام میشود.
روشهای قیمتگذاری موجودی چیست؟
FIFO، LIFO و میانگین موزون؛ گزارش کاردکس مقداری-ریالی نیز فراهم است.
آیا چند انباره و انتقال بین انبارها دارید؟
بله؛ تعریف چند انبار و انتقال دقیق بین انبارها بر اساس تعداد/مقدار پشتیبانی میشود.
یکپارچگی با مالی/فروش چگونه است؟
اسناد از سیستمهای مالی/فروش بهصورت هوشمند صادر شده و کنترل موجودی همگام است.