# Ingredients [Task map](tasks.txt) | [Field reference](fields.txt) ## Purchase basis first Ask for product identity, price per purchased unit and actual pack size. Match the base unit to buying practice. For fish sauce bought by the bottle, use the bottle and its actual ml conversion. A product bought by the liter can use liters. Compare the same product and size, or normalize quantities before saying its price rose or fell. Search existing records before creating another brand/pack variant or updating a price. ## Create 1. Open [วัตถุดิบ](https://tangraka.com/ingredients). Select “เพิ่มวัตถุดิบ” if no suitable record exists. 2. Enter “ชื่อวัตถุดิบ”, “ราคา (ต่อหน่วยพื้นฐาน)” and “หน่วยพื้นฐาน”. Add “รหัส (ถ้ามี)”, “หมวดหมู่” and “คอมเมนต์ / บันทึก / ผู้จำหน่าย (ถ้ามี)” when useful. 3. In the base-unit dropdown, search for a preset. For a custom name such as กระสอบ, type it and select the offered “ใช้” action with that name. Typing in search alone does not select the unit. 4. If usage differs from purchase, first check whether the base unit already supplies the needed automatic partner described below. Do not create a redundant conversion. For a needed relation not provided automatically, open “ตั้งค่าขั้นสูง (Advanced Options)” → “หน่วยแปลง” → “เพิ่ม”. Enter the number of target units per1 base unit and select the target unit in “เลือกหน่วยย่อย”. 5. Check the displayed conversion and unit cost. Click “บันทึก” once; wait, reopen and verify. Confirm the intended usage unit appears when selecting this ingredient in a recipe. Example only:35บาท per700ml bottle means1ขวด =700มิลลิลิตร;100ml costs5บาท before other adjustments. ## Units A custom name does not define its physical size. Ask for the conversion. Do not equate ml and grams without ingredient-specific facts. Use only available, appropriate recipe units. The preset pairs กิโลกรัม ↔ กรัม and ลิตร ↔ มิลลิลิตร support automatic conversion at1000 small units per large unit. Select the intended preset spelling and verify the usage unit in the recipe/menu picker after saving. A custom unit or spelling does not guarantee this behavior. A bottle still needs its actual contents, such as1ขวด =700มิลลิลิตร. Do not assume a manual conversion creates all transitive options; a custom sack-to-grams conversion does not necessarily expose kilograms. Inspect existing saved conversions before changing anything. Up to5 manual conversion rows are available. Duplicate/base/automatic-pair units may be excluded by the picker. Use known positive ratios and verify saved rows. Once the ingredient is used, its base unit may be locked after loading. Read the explanation and review dependencies; do not bypass the lock or silently replace the ingredient. ## Yield In advanced options, expand “ระบบคำนวณ Yield”. Enter comparable before/after usable quantities and inspect the percentage. The switch “คำนวณ Yield เข้าไปในต้นทุน” determines whether that yield adjusts cost. Measured yield alone does not mean it is applied. Example only:100บาท perkg,800g usable, applied80% yield means100g usable costs12.50บาท; with application off it costs10บาท before other adjustments. Save, reopen and check both measurement and application state, then the dependent recipe cost. Avoid counting the same loss again through inflated recipe usage. “ต้องการถอดภาษีซื้อ 7% ออกจากราคาซื้อ” concerns a VAT-inclusive purchase price and the shop's VAT setting. Read [Cost interpretation](costs.txt) before changing it. If price, pack size or conversion is missing, ask for facts through [Coaching](coaching.txt). Do not represent an incomplete zero-price item as a finished cost calculation.