import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.mime.base import MIMEBase from datetime import datetime import InvoiceDatabase def send_email(test, record): port = 25 smtp_server = "gll-com.mail.protection.outlook.com" orders = InvoiceDatabase.just_work() for each in orders: info = InvoiceDatabase.record_lookup(each) print(info) OrderNumber = info[0] OrderDate = info[1] UserLogon = info[2] Name = info[3] + ' ' + info[4] ChargeCode = info[5] InvoiceNumber = info[6] InvoiceEmailAddress = info[7] InvoiceDate = datetime.today().strftime('%m/%d/%Y') body = ''' CFF Order Invoice

INVOICE

Address Block  

Make Checks Payable To:
Great Lakes Integrated
4246 Hudson Dr.
Stow, Ohio 44224
 

Order Number: {OrderNumber} 
Order Date: {OrderDate} 
User Logon: {UserLogon} 
Name: {Name} 
Charge Code: {ChargeCode} 

Invoice Number: {InvoiceNumber} 
Invoice Date: {InvoiceDate} 
Customer Number: 1925 
Terms:Due in 30 days 

The order consists of the following items:

''' HTMLpart = body.format(OrderNumber=OrderNumber, OrderDate=OrderDate, UserLogon=UserLogon, Name=Name, ChargeCode=ChargeCode, InvoiceDate=InvoiceDate, InvoiceNumber=InvoiceNumber) bodyHTML = MIMEText(HTMLpart, "html") f = open("sample.html", 'w') f.write(HTMLpart) f.close() msg = MIMEMultipart() msg['Subject'] = 'INVOICE ' + InvoiceNumber if test is True: msg['To'] = 'ddembinski@gll.com' else: # msg['To'] = InvoiceEmailAddress msg['To'] = 'ddembinski@gll.com' msg['From'] = 'ddembinski@gll.com' msg.add_header('Content-Type', 'text/html') msg.attach(bodyHTML) try: with smtplib.SMTP(smtp_server, port, timeout=120) as server: server.sendmail(msg['From'], msg['To'], msg.as_string()) except Exception as e: print(e)