atifsial123 commited on
Commit
40d3d4b
·
verified ·
1 Parent(s): 6588037

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +22 -15
app.py CHANGED
@@ -54,6 +54,10 @@ def search_by_head(head):
54
  def generate_ledger_pdf(head):
55
  global ledger
56
  try:
 
 
 
 
57
  # Use a temporary directory to save the file
58
  with tempfile.NamedTemporaryFile(delete=False, suffix=".pdf") as tmp_file:
59
  pdf_file_path = tmp_file.name # Get the temporary file path
@@ -80,21 +84,24 @@ def generate_ledger_pdf(head):
80
 
81
  # Filter records by head
82
  filtered_ledger = ledger[ledger["Head"] == head]
83
- pdf.set_font("Arial", size=12)
84
-
85
- for _, row in filtered_ledger.iterrows():
86
- pdf.cell(50, 10, str(row['Company Name']), border=1, align="C")
87
- pdf.cell(40, 10, str(row['SP/Station']), border=1, align="C")
88
- pdf.cell(30, 10, str(row['Invoice No']), border=1, align="C")
89
- pdf.cell(30, 10, str(row['Date']), border=1, align="C")
90
- pdf.cell(40, 10, f"{row['Amount']:.2f}", border=1, ln=True, align="C")
91
-
92
- # Total amount for the head
93
- total_amount = filtered_ledger["Amount"].sum()
94
- pdf.ln(10) # Add some space before the total
95
- pdf.set_font("Arial", 'B', 12)
96
- pdf.cell(150, 10, "Total Amount", border=1, align="R")
97
- pdf.cell(40, 10, f"{total_amount:.2f}", border=1, ln=True, align="C")
 
 
 
98
 
99
  # Save PDF file
100
  pdf.output(pdf_file_path)
 
54
  def generate_ledger_pdf(head):
55
  global ledger
56
  try:
57
+ # Ensure the head is not empty
58
+ if head.strip() == "":
59
+ return None
60
+
61
  # Use a temporary directory to save the file
62
  with tempfile.NamedTemporaryFile(delete=False, suffix=".pdf") as tmp_file:
63
  pdf_file_path = tmp_file.name # Get the temporary file path
 
84
 
85
  # Filter records by head
86
  filtered_ledger = ledger[ledger["Head"] == head]
87
+ if filtered_ledger.empty:
88
+ pdf.cell(0, 10, f"No records found for {head}", ln=True, align="C")
89
+ else:
90
+ pdf.set_font("Arial", size=12)
91
+
92
+ for _, row in filtered_ledger.iterrows():
93
+ pdf.cell(50, 10, str(row['Company Name']), border=1, align="C")
94
+ pdf.cell(40, 10, str(row['SP/Station']), border=1, align="C")
95
+ pdf.cell(30, 10, str(row['Invoice No']), border=1, align="C")
96
+ pdf.cell(30, 10, str(row['Date']), border=1, align="C")
97
+ pdf.cell(40, 10, f"{row['Amount']:.2f}", border=1, ln=True, align="C")
98
+
99
+ # Total amount for the head
100
+ total_amount = filtered_ledger["Amount"].sum()
101
+ pdf.ln(10) # Add some space before the total
102
+ pdf.set_font("Arial", 'B', 12)
103
+ pdf.cell(150, 10, "Total Amount", border=1, align="R")
104
+ pdf.cell(40, 10, f"{total_amount:.2f}", border=1, ln=True, align="C")
105
 
106
  # Save PDF file
107
  pdf.output(pdf_file_path)