各セルに変数値を持つテーブルを含むメールを送信する必要があります。これは、任意の方法 (電子メール経由の html、Excel/Word テーブルなど) を使用して行うことができます。唯一の問題は、Emailer プログラムと System.Net.Mail インポートの制限によるもので、文字列でなければなりません。
これが私がこれまでに持っているものです:
Imports DelayEmailer.DelayTrackerWs
Imports System.Configuration
Public Class DelayEmailer
Public Shared Sub Main()
Dim ws As New DelayTrackerWs.DelayUploader
Dim delays As DelayTrackerWs.Delay()
Dim emailer As New Emailer()
Dim delaystring As String
delays = ws.SearchDelaysDate(DelayTrackerWs.AreaEnum.QT, DelayTrackerWs.UnitEnum.QT, Now.AddDays(-1), Now)
delaystring = "Delays" & vbNewLine
delaystring &= "Facilty Start Time Status Category Reason Comment"
For i = 0 To delays.Length - 1
delaystring &= vbNewLine & delays(i).Facility & " "
delaystring &= FormatDateTime(delays(i).DelayStartDateTime, DateFormat.ShortDate) & " "
delaystring &= FormatDateTime(delays(i).DelayStartDateTime, DateFormat.ShortTime) & " "
'delaystring &= delays(i).DelayDuration & " "
delaystring &= delays(i).Status & " "
delaystring &= delays(i).CategoryCode & " "
delaystring &= delays(i).ReasonCode & " "
delaystring &= delays(i).Comment
Next
emailer.Send(ConfigurationManager.AppSettings("EmailList"), "delays", delaystring)
End Sub
ご覧のとおり、現在、各 delays(i) の値が同じである場合に連結された一連の文字列が並んでいます。もう 1 つの問題は、これをモバイル デバイスで簡単に表示できるようにする必要があることです。ここのテーブルはこれを修正する必要があります。