فهم عمليات الترحيل وإقفال الحسابات في نهاية الفترة المالية
الترحيل هو عملية نقل المعلومات من دفتر اليومية (Journal) إلى دفتر الأستاذ (Ledger). تتم هذه العملية بشكل دوري لتحديث أرصدة الحسابات في دفتر الأستاذ.
| دفتر اليومية | ||||
|---|---|---|---|---|
| التاريخ | البيان | رقم الحساب | مدين | دائن |
| 2023/05/01 | النقدية | 1001 | 10,000 | |
| إيرادات التبرعات | 4001 | 10,000 | ||
| تسجيل استلام تبرع نقدي | ||||
ميزان المراجعة هو قائمة بجميع الحسابات وأرصدتها في نهاية الفترة المحاسبية. يستخدم للتحقق من توازن الجانب المدين والدائن قبل إجراء قيود الإقفال.
ملاحظة هامة: توازن ميزان المراجعة لا يعني بالضرورة خلو السجلات من الأخطاء، فهناك أخطاء لا يكشفها مثل أخطاء الحذف أو التصنيف الخاطئ.
قيود الإقفال هي القيود المحاسبية التي تُسجل في نهاية الفترة المالية لتصفير أرصدة الحسابات المؤقتة (الإيرادات والمصروفات) ونقل صافي نتيجة أعمال الفترة إلى حساب صافي الأصول.
في الأنظمة المحاسبية الحديثة، تتم عمليات الترحيل والإقفال بشكل آلي، لكن من المهم للمطور فهم المنطق وراء هذه العمليات.
// دالة لإنشاء قيود الإقفال
function createClosingEntries(fiscalYearId) {
// 1. جمع كل الإيرادات
const totalRevenue = calculateTotalRevenue(fiscalYearId);
// 2. جمع كل المصروفات
const totalExpenses = calculateTotalExpenses(fiscalYearId);
// 3. إنشاء قيد إقفال الإيرادات
createJournalEntry({
date: getFiscalYearEndDate(fiscalYearId),
description: "إقفال حسابات الإيرادات",
entries: [
{ accountId: "REVENUE_SUMMARY", debit: totalRevenue, credit: 0 },
{ accountId: "INCOME_SUMMARY", debit: 0, credit: totalRevenue }
]
});
// 4. إنشاء قيد إقفال المصروفات
createJournalEntry({
date: getFiscalYearEndDate(fiscalYearId),
description: "إقفال حسابات المصروفات",
entries: [
{ accountId: "INCOME_SUMMARY", debit: totalExpenses, credit: 0 },
{ accountId: "EXPENSE_SUMMARY", debit: 0, credit: totalExpenses }
]
});
// 5. حساب صافي الدخل/العجز
const netIncome = totalRevenue - totalExpenses;
// 6. إقفال ملخص الدخل إلى صافي الأصول
createJournalEntry({
date: getFiscalYearEndDate(fiscalYearId),
description: "إقفال ملخص الدخل إلى صافي الأصول",
entries: [
{
accountId: netIncome >= 0 ? "INCOME_SUMMARY" : "NET_ASSETS",
debit: Math.abs(netIncome),
credit: 0
},
{
accountId: netIncome >= 0 ? "NET_ASSETS" : "INCOME_SUMMARY",
debit: 0,
credit: Math.abs(netIncome)
}
]
});
// 7. تحديث حالة السنة المالية إلى "مغلقة"
updateFiscalYearStatus(fiscalYearId, "CLOSED");
}
عمليات الترحيل والإقفال هي جزء أساسي من الدورة المحاسبية. الترحيل ينقل المعلومات من دفتر اليومية إلى دفتر الأستاذ، بينما تعمل قيود الإقفال على تصفير الحسابات المؤقتة وإعداد النظام المحاسبي للفترة المالية الجديدة.
| الترحيل | نقل المعلومات من دفتر اليومية إلى دفتر الأستاذ |
| ميزان المراجعة | قائمة بجميع الحسابات وأرصدتها للتحقق من التوازن |
| قيود الإقفال | تصفير الحسابات المؤقتة ونقل النتيجة إلى صافي الأصول |
| الاعتبارات البرمجية | تصميم أنظمة تدعم الفصل بين الفترات المالية وتنفيذ آليات الإقفال |