فروش وزنی و کسری؛ کیلو، متر و گام سفارش
واحد نمایشی و داخلی، دقت، تبدیل، حداقل خرید و فروش یک تن کالا
فروش کیلویی، متری و مقدار کسری؛ راهنمای جلوگیری از اشتباه موجودی
در کارهایی مانند برنج، خشکبار، پارچه، کابل، رنگ یا مواد اولیه، مقدار همیشه «تعداد صحیح» نیست. مشتری ممکن است ۰٫۷۵ کیلوگرم یا ۲٫۵ متر خرید کند. در آناما مقدار قابل نمایش به مشتری و مقدار ذخیرهشده داخل سیستم لزوماً یکسان نیستند. اگر قبل از نخستین فروش واحد و دقت را درست تنظیم کنید، محاسبه موجودی، رزرو و مبلغ فروش قابل فهم باقی میماند.
سه مفهوم که نباید با هم اشتباه شوند
نوع واحد میگوید کالای شما از جنس تعداد، وزن، طول، سطح، حجم یا زمان است. کد واحد (مثلاً kg یا m) شناسه استاندارد داخلی انتخاب شماست و عنوان واحد همان عبارتی است که کاربر فارسی میبیند. دقت اعشار مشخص میکند کوچکترین مقدار قابل نگهداری چند رقم اعشار دارد. «گام خرید» هم تعیین میکند سفارش در چه فاصلههایی افزایش یابد. این چهار ویژگی متفاوت هستند و باید با دستگاه اندازهگیری و بستهبندی واقعی هماهنگ شوند.
| تنظیم | مثال برای برنج فله | اثر روی خرید |
|---|---|---|
| نوع واحد | وزن | تعیین دسته اندازهگیری |
| عنوان واحد | کیلوگرم | برچسب قابل مشاهده مشتری |
| کد واحد | kg | شناسه مورد استفاده API و داده |
| دقت اعشار | ۳ | پشتیبانی از مقدارهایی مثل ۰٫۷۵۰ کیلوگرم |
| گام مقدار | ۰٫۲۵ کیلوگرم | سفارش ۰٫۵، ۰٫۷۵، ۱ کیلو و مانند آن |
| حداقل | ۰٫۵ کیلوگرم | جلوگیری از ثبت سفارش بسیار کوچک |
| حداکثر | ۲۰ کیلوگرم | کنترل سقف هر سفارش یا ردیف |
هشدار فنی: در مدل، مقدار سفارش و موجودی به «واحد جزئی/داخلی» تبدیل میشود و بعضی فیلدهای API بهصورت عدد صحیح همین واحد هستند. توضیح مثال بالا مفهوم فروش است؛ پیش از واردکردن مقدار، اطمینان یابید فرم فعلی تبدیل مقادیر نمایشی را به درستی انجام میدهد. اگر سامانه «گام ۲۵۰» در واحد داخلی میخواهد، واردکردن ۰٫۲۵ بدون تبدیل درست نیست. از تغییر مستقیم دیتابیس برای اصلاح این اختلاف استفاده نکنید.
مثال دقیق خرید یک تن و فروش ۸۰۰ کیلو
فرض کنید واحد فروش kg و دقت سه رقم اعشار است. یک تن کالا معادل ۱۰۰۰ کیلوگرم است. اگر رسید انبار برای ۱۰۰۰ کیلو قطعی شود و هیچ رزرو دیگری وجود نداشته باشد، فروش و خروج قطعی ۸۰۰ کیلو، ۲۰۰ کیلو موجودی فیزیکی باقی میگذارد. اما اگر سفارش ۳۰۰ کیلویی از پیش رزرو شده ولی هنوز خروج قطعی نشده باشد، ممکن است ۱۰۰۰ کیلو روی دست، ۳۰۰ رزرو و فقط ۷۰۰ کیلو قابلفروش ببینید. وقتی سفارش تسویه و خروج قطعی شود، روی دست کاهش مییابد و رزرو متناظر آزاد یا مصرف میشود؛ نباید برای همان سفارش دوباره «کاهش دستی» بزنید.
قیمت واحد با مبلغ ردیف تفاوت دارد
اگر قیمت هر کیلوگرم ۲۴۰ هزار تومان است و مشتری ۰٫۷۵ کیلو میخرد، مبلغ خام این ردیف ۱۸۰ هزار تومان است، پیش از مالیات، تخفیف، ارسال یا قواعد گردکردن. برای دو کیلو، ۴۸۰ هزار تومان. همیشه یک سفارش واقعی را در سبد تست کنید؛ صرف نمایش قیمت یک کیلو در صفحه محصول تضمین نمیکند همه ترکیبهای تخفیف و مقدار درست محاسبه شدهاند. قیمت «هر ۱۰۰ گرم» نباید به اشتباه «هر کیلو» معرفی شود.
انتخاب درست بین بسته ثابت و کالای فله
اگر فقط بستههای یک و پنج کیلوگرمی با بارکد و موجودی مستقل میفروشید، دو تنوع بستهبندی ممکن است انتخاب مناسبتری باشد؛ وزن هر بسته مشخص است و مشتری یک یا چند بسته میخرد. اگر از مخزن فله مقدار متغیر وزن میکنید، تنوع وزنی با مقدار کسری مناسب است. مخلوطکردن این دو روش بدون کنترل تبدیل واحد، شمارش و قیمت میتواند باعث کمبود ساختگی یا موجودی اشتباه شود.
چه زمانی تغییر واحد خطرناک است؟
پس از استفاده از تنوع در گردش انبار یا سفارش، معنی مقدار ممکن است قفل شود (quantity_semantics_locked). این محدودیت برای محافظت از تاریخچه است. اگر ابتدا «عدد» انتخاب کرده و بعد تصمیم به فروش «کیلوگرم» گرفتهاید، پیش از هر اقدامی سفارشهای باز، رزروها، مقدار انبار و قیمتهای قبلی را بررسی کنید. ایجاد تنوع جدید و انتقال کنترلشده موجودی اغلب مطمئنتر از بازنویسی معنی اعداد قدیمی است.
عیبیابی گامبهگام
مقدار کسری رد میشود: دقت اعشار، حداقل، حداکثر و گام را بررسی کنید. عدد مجاز باید هم داخل بازه باشد و هم با گام هماهنگ باشد.
قیمت ده یا هزار برابر دیده میشود: ابتدا بررسی کنید قیمت برای چه واحدی تعریف شده، کد واحد چیست، مقدار به چه واحد داخلی تبدیل شده و قیمت به تومان وارد شده یا نه. بدون صورتمسئله عدد را در دیتابیس تقسیم یا ضرب نکنید.
موجودی بیش از انتظار کم شد: گردشهای StockMovement و مرجع سفارش را ببینید. اگر فروش خودکار خروج ثبت کرده و همزمان کاهش دستی انجام شده باشد، دو رویداد جدا ایجاد شده است. اصلاح آن باید با سند و دلیل قابل پیگیری انجام شود.
بین انبار و فروشگاه اختلاف هست: عدد فیزیکی، رزرو و محدودیت کانال انبار را تفکیک کنید. گاهی کالا در انبار موجود است اما انبار برای فروش اینترنتی مجاز نیست.
پیشنهاد اجرایی برای فروش وزنی
قبل از انتشار، برای یک کالای نمونه با دقت مورد نیاز، خرید/ورود ۱۰۰۰ کیلو، فروش آزمایشی ۰٫۷۵ کیلو، فروش ۸۰۰ کیلو، رزرو همزمان، مرجوعی و خروجی گزارش را در محیط تست بررسی کنید. این کار از اصلاح صدها محصول پس از شروع فروش بسیار کمهزینهتر است. برای عملیات واقعی گردش انبار و رزرو و برای ارتباط مالی موجودی و بهای تمامشده را بخوانید.