2

メールを送信する必要があります。データセットを反復処理して、メール本文に含まれているメールアドレスやその他の情報を取得します。

私は電子メールがプレーンテキストであることを好みます。私の問題は、改行を挿入する方法がわからないため、情報が読みやすい形で配置されていることです。

私はこれを試しました:

<email-to address="{$overdue_releases.req_email}"/>

<subject value="OVERDUE ITEMS NOTIFICATION"/>

<body value="This is a notification that you have the following overdue items:{$var.newline}"/>
<body value="-----------------------------------------------------------------{$var.newline}"/>
<body value="{$var.newline}"/>
<body value="Borrower: {$overdue_releases.req_name}{$var.newline}"/>
<body value="Phone: {$overdue_releases.req_phone}{$var.newline}"/>
<body value="Equipment item: {$overdue_releases.eqm_name} - {$overdue_releases.itm_identification}{$var.newline}"/> 
<body value="Date borrowed: {$overdue_releases.rel_date_pickedup}{$var.newline}"/>  
<body value="-----------------------------------------------------------------{$var.newline}"/>  
<body value="Please return the overdue item(s) as AS SOON AS POSSIBLE.{$var.newline}"/>  
<body value="-----------------------------------------------------------------{$var.newline}"/>  

改行変数は&#10;として設定されました。&#13; (ここに表示されるようにスペースで表示してください)

これは機能していません。電子メールは、すべてのbody値タグを1つの連続した行に連結したものです。

また、電子メールをhtmlとして出力し、改行変数に文字「<br>」(ハッシュ、アンパサンド、ASCII文字の形式)を使用しようとしました。これは失敗でした。

私はドコで何も見つけることができませんでした。

メールに添付するためにtxt形式のJasperReportを作成する必要がありますか、それともメール本文に改行やマークアップ文字を挿入する方法はありますか?

4

1 に答える 1

2

body タグを 1 つだけ使用してみてください。&#10;文字列内の実際の新しい行のいずれか、または単に機能するはずです。

<body value="This is a notification that you have the following overdue items:
-----------------------------------------------------------------

Borrower: {$overdue_releases.req_name}
Phone: {$overdue_releases.req_phone}
Equipment item: {$overdue_releases.eqm_name} - {$overdue_releases.itm_identification}
Date borrowed: {$overdue_releases.rel_date_pickedup}
-----------------------------------------------------------------
Please return the overdue item(s) as AS SOON AS POSSIBLE.
---------------------------------------------------------------"/>

この回答も参照してください: https://stackoverflow.com/a/2012277/1164143。最善の (つまり、最も正確で移植性の高い) 方法は、単純な/リテラル​​の改行を使用することです。ただし、エンコードされた改行 ( &#10;, &#10;&#13;) は Aviarc で正常に動作します。

于 2012-11-02T20:28:16.697 に答える