مرحبًا بكم في متجرنا. تعرف على المزيد

استعد لبعض سحر البيع بالتجزئة من خلال تقديم خدمة الاستلام المحلي أو الشحن في جميع أنحاء مصر!

تمت إضافة مجموعات جديدة! تعرف على المزيد

عروض فلاش RTX متاحة الآن!

فيجاوف

Quotation Compumarts

CompuMarts Quotation Builder
Customer Info
Line Items
# Item / Description Qty Unit Price Total
Pricing Adjustments
EGP
EGP
EGP
Summary
SubtotalEGP 0
Discount– EGP 0
ShippingEGP 0
TaxEGP 0
Final Total EGP 0
Live Preview
Your Tech, Our Passion

Quotation

No. —

Customer:
Salesperson:
# Item Qty Unit (EGP) Total (EGP)
No items added yet
SubtotalEGP 0
Discount– EGP 0
ShippingEGP 0
TaxEGP 0
Final Total EGP 0
'; var win = window.open('', '_blank', 'width=860,height=1000'); if (!win) { toast('⚠️ Allow popups then try again', 3000); return; } win.document.open(); win.document.write(html); win.document.close(); toast('✅ Sent to Slack — opening print...', 2000); } /* ── Reset ── */ function doReset() { if (!confirm('Reset all fields and items?')) return; document.querySelectorAll('input:not([type=date]), textarea').forEach(function(el) { if (el.type === 'checkbox') el.checked = false; else el.value = ''; }); document.getElementById('discount').value = '0'; document.getElementById('shipping').value = '0'; document.getElementById('tax').value = '0'; document.getElementById('items-container').innerHTML = ''; itemCounter = 0; lastSlackSig = ''; initDefaults(); render(); toast('Cleared ✓'); } /* ── Toast ── */ function toast(msg, dur) { var t = document.getElementById('toast'); t.textContent = msg; t.classList.add('show'); clearTimeout(t._timer); t._timer = setTimeout(function() { t.classList.remove('show'); }, dur || 2600); } /* ── Init ── */ function initDefaults() { var now = new Date(); var qno = 'CM-' + now.getFullYear() + ('0'+(now.getMonth()+1)).slice(-2) + ('0'+now.getDate()).slice(-2) + '-' + Math.floor(1000 + Math.random()*9000); document.getElementById('quotationNo').placeholder = qno; document.getElementById('quotationDate').value = now.toISOString().split('T')[0]; } window.addEventListener('DOMContentLoaded', function() { initDefaults(); // Start with 3 blank items for convenience addItem(); addItem(); addItem(); render(); });