Current Ratio Dashboard

Current Ratio Dashboard

Overall Current Ratio Summary

Total Records

0

Total Current Assets ($)

$0

Total Current Liabilities ($)

$0

Average Current Ratio

0

Current Ratio Distribution

Detailed Current Ratio Records

ID Entity/Period Current Assets ($) Current Liabilities ($) Current Ratio Interpretation

${averageCurrentRatioElem.textContent}

`; pdfContentWrapper.appendChild(summarySection); // Add distribution charts const chartsSection = document.createElement('div'); chartsSection.classList.add('grid', 'grid-cols-2', 'gap-6', 'mb-6'); chartsSection.innerHTML = `

Current Ratio Distribution

`; pdfContentWrapper.appendChild(chartsSection); // Populate PDF charts (re-use logic but target PDF elements) const ratioBins = { '< 1.0 (Weak)': 0, '1.0-2.0 (Healthy)': 0, '> 2.0 (Strong)': 0, 'Infinity (Excellent)': 0 }; currentRatioRecords.forEach(record => { const ratio = parseFloat(record.currentRatio); if (record.currentRatio === 'Infinity') { ratioBins['Infinity (Excellent)']++; } else if (ratio < 1.0) { ratioBins['< 1.0 (Weak)']++; } else if (ratio >= 1.0 && ratio <= 2.0) { ratioBins['1.0-2.0 (Healthy)']++; } else if (ratio > 2.0) { ratioBins['> 2.0 (Strong)']++; } }); renderBarChart(chartsSection.querySelector('#pdfCurrentRatioDistributionChart'), ratioBins); // Add detailed current ratio list table const currentRatioListSection = document.createElement('div'); currentRatioListSection.innerHTML = `

Detailed Current Ratio Records

${dashboardCurrentRatioTableBody.innerHTML}
ID Entity/Period Current Assets ($) Current Liabilities ($) Current Ratio Interpretation
`; pdfContentWrapper.appendChild(currentRatioListSection); // Options for html2pdf const options = { margin: 10, filename: 'Current_Ratio_Dashboard.pdf', image: { type: 'jpeg', quality: 0.98 }, html2canvas: { scale: 2, logging: true, dpi: 192, letterRendering: true }, jsPDF: { unit: 'mm', format: 'a4', orientation: 'portrait' }, pagebreak: { mode: ['avoid-all', 'css', 'legacy'] } }; // Generate PDF from the temporary content wrapper html2pdf().from(pdfContentWrapper).set(options).save(); // Clean up the temporary div (optional, as it's not appended to the DOM) pdfContentWrapper.remove(); } /** * Loads initial sample data for the dashboard. * Relevant to USA context. */ function loadSampleData() { currentRatioRecords = [ { id: 'CR001', entityPeriod: 'Q1 2024 - Corp A', currentAssets: 500000, currentLiabilities: 200000, currentRatio: '2.50', interpretation: 'Strong Liquidity' }, { id: 'CR002', entityPeriod: 'Q1 2024 - Corp B', currentAssets: 300000, currentLiabilities: 280000, currentRatio: '1.07', interpretation: 'Healthy Liquidity' }, { id: 'CR003', entityPeriod: 'Q1 2024 - Corp C', currentAssets: 100000, currentLiabilities: 150000, currentRatio: '0.67', interpretation: 'Weak Liquidity' }, { id: 'CR004', entityPeriod: 'Q2 2024 - Corp A', currentAssets: 600000, currentLiabilities: 250000, currentRatio: '2.40', interpretation: 'Strong Liquidity' }, { id: 'CR005', entityPeriod: 'Q2 2024 - Corp B', currentAssets: 350000, currentLiabilities: 300000, currentRatio: '1.17', interpretation: 'Healthy Liquidity' }, { id: 'CR006', entityPeriod: 'Q2 2024 - Corp C', currentAssets: 120000, currentLiabilities: 180000, currentRatio: '0.67', interpretation: 'Weak Liquidity' }, { id: 'CR007', entityPeriod: 'Q3 2024 - Corp D', currentAssets: 700000, currentLiabilities: 0, currentRatio: 'Infinity', interpretation: 'Excellent Liquidity (No Liabilities)' } ]; // Recalculate ratios for sample data to ensure consistency with function currentRatioRecords.forEach(record => { const { ratio, interpretation } = calculateCurrentRatio(record.currentAssets, record.currentLiabilities); record.currentRatio = ratio; record.interpretation = interpretation; }); }
Scroll to Top