Oct-20-2018, 10:11 AM
(Oct-20-2018, 01:25 AM)stullis Wrote: I see indentation errors, which wouldn't cause your problem, but it does make me wonder if the code you've posted is indented identically. Could you please post the version with the problematic conditions implemented? Otherwise, we're all just guessing at the logical flow of the code.
Sure thing, here you go!
#!/usr/bin/python # -*- coding: utf-8 -*- import requests import sys import json import datetime import smtplib import time from pprint import pprint from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText def sendemail(email, data): ret = '' try: me = 'email' # You can update the helpdesk mail address. my_password = 'password' # Mailbox Password you = email msg = MIMEMultipart('alternative') msg['Subject'] = 'WARNING: Unassigned Request Type(s) and/or Catagory(ies) and/or Subcategory(ies) etc : ' + time.strftime('%c') msg['From'] = me msg['To'] = email html = data part2 = MIMEText(html, 'html') msg.attach(part2) s = smtplib.SMTP_SSL('mail') # Mail Server Host name s.login(me, my_password) s.sendmail(me, you, msg.as_string()) s.quit() ret = 'success' except smtplib.SMTPException as err: print ('Unable to Send emails : ', err) ret = 'failure' return ret reportJson = str(sys.argv[1]) json_data = open(reportJson).read() data = json.loads(json_data) counter = 0 techEmail = '' message = \ """<html><html><head><style>table {font-family: arial, sans-serif;border-collapse: collapse;width: 100%;}td, th {border: 1px solid #dddddd;text-align: left;padding: 8px;}tr:nth-child(even) {background-color: #dddddd;}</style></head><body><table><tr><th>RequestID</th><th>Site</th><th>RequestType</th><th>Status</th><th>Requester</th><th>Subject</th></tr>""" length = len(data) for dObj in data: requestID = dObj.get('requestid') site = dObj.get('site') RequestType = dObj.get('RequestType') status = dObj.get('status') requester = dObj.get('requester') subject = dObj.get('subject') email = dObj.get('email') if RequestType is None: RequestType = 'Not Assigned' if Violated == 'No': if ApproachingSLA == 'Yes': if counter == 0: techEmail = email counter += 1 if techEmail == email: message += \ """<tr><td>""" \ + requestID + """</td><td>""" + site + """</td><td>""" + RequestType + """</td><td>""" \ + status + """</td><td>""" + requester + """</td><td>""" \ + subject + """</td></tr>""" if counter == length: message += '</table></body></html>' r = sendemail(techEmail, message) print(techEmail) else: message += '</table></body></html>' r = sendemail(techEmail, message) print(techEmail) techEmail = email message = \ """<html><head><style>table {font-family: arial, sans-serif;border-collapse: collapse;width: 100%;}td, th {border: 1px solid #dddddd;text-align: left;padding: 8px;}tr:nth-child(even) {background-color: #dddddd;}</style></head><body><table><tr><th>RequestID</th><th>Site</th><th>RequestType</th><th>Status</th><th>Requester</th><th>Subject</th></tr><tr><td>""" \ + requestID + """</td><td>""" + site + """</td><td>""" + RequestType + """</td><td>""" \ + status + """</td><td>""" + requester + """</td><td>""" \ + subject + """</td></tr>""" if counter == length: message = \ """<html><head><style>table {font-family: arial, sans-serif;border-collapse: collapse;width: 100%;}td, th {border: 1px solid #dddddd;text-align: left;padding: 8px;}tr:nth-child(even) {background-color: #dddddd;}</style></head><body><table><tr><th>RequestID</th><th>Site</th><th>RequestType</th><th>Status</th><th>Requester</th><th>Subject</th></tr><tr><td>""" \ + requestID + """</td><td>""" + site + """</td><td>""" + RequestType + """</td><td>""" \ + status + """</td><td>""" + requester + """</td><td>""" \ + subject + """</td></tr></table></body></html>""" r = sendemail(techEmail, message) print(techEmail) if(r=="success"): print("Reports sent successfully to the respective techs") else: