Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Removed |../../index.htm#lansa/mail_start.htm]
現在地:

...

9.140 MAIL_START

Note

注意

...

 9.1

...

組み込み関数の規則     利用オプション

この関数を使用して電子メール・セッションを開始します。

呼び出し元ファンクションは、この開始されたセッションを使用して、1つの電子メール・メッセージを定義して送信することができます。

この組み込み関数を使用する前に「電子メール組み込み関数に関する注意」を参照してください。  

引数

なし

戻り値

...

番号

タイプ

必須/任意

記述

最小長

最大長

最小小数桁数

最大小数桁数

1

A

任意

戻りコード

OK : アクションが完了した

ER : エラーが発生した

2

2

 

 

...



技術上の注記

  • MAIL_STARTは、既存のメール・メッセージ情報をすべて破棄して、新たなメール・セッションを開始します。
  • 一度に1つの電子メール定義だけを進捗させることができます(つまり、同一ジョブで同時に2つの電子メール定義を定義して送信することはできません)。
  • MAIL_SEND組み込み関数を使用してメッセージを送信しない限り、電子メール定義の詳細は消えてしまいます。
  • エラーが発生した場合、電子メール定義の詳細はすべて破棄されてしまいます。処理を再開するには、MAIL_STARTを新たに呼び出す必要があります。

以下の例では、各種組み込み関数を使用して電子メール・メッセージの詳細をすべて定義した後にそれを送信しています。 注:

Note

注意: テストで以下の例を使用する場合は、MAIL_ADD_RECIPIENTおよびMAIL_ADD_

...

ORIGINATORの例で使用されている<-- name --> および <-- recipient@address -->を置き換える必要があります。


FUNCTION OPTIONS(*DIRECT)

...


DEFINE FIELD(#LEM_RETC)

...

 TYPE(*CHAR)

...

 LENGTH(2)

...

 LABEL('

...

Return Code')
DEF_

...

COND NAME(*OKAY)

...

 COND('#LEM_

...

RETC =

...

 OK')
DEF_

...

COND NAME(*NOTOKAY)

...

 COND('#LEM_

...

RETC *NE OK')
DEF_

...

COND NAME(*CLIENT)

...

 COND('*

...

CPUTYPE *NE AS400')
DEF_

...

COND NAME(*HOST)

...

 COND('*

...

CPUTYPE *EQ AS400')
**********
BEGIN_LOOP
**********

...

 COMMENT(Start Mail message - Initialize)
USE BUILTIN(MAIL_START)

...

 TO_GET(#LEM_RETC)
**********

...

 COMMENT(If not IBM i, set MAPI arguments)
IF COND(*CLIENT)
**********

...

 COMMENT(Use the Windows Default Profile)
USE BUILTIN(MAIL_SET_OPTION)

...

 WITH_ARGS('PROFILENAME'

...

 'Windows Messaging Settings')

...

 TO_GET(#LEM_RETC)
**********

...

 COMMENT(Assume user has no Password)
USE BUILTIN(MAIL_SET_OPTION)

...

 WITH_ARGS('PASSWORD'

...

 *BLANK)

...

 TO_GET(#LEM_RETC)
**********

...

 COMMENT(Use existing MAPI mail session)
**********

...

 COMMENT(from logged on Email client)
USE BUILTIN(MAIL_SET_OPTION)

...

 WITH_ARGS('MAPI_NEW_SESSION'

...

 N)

...

 TO_GET(#LEM_RETC)
**********

...

 COMMENT(Display MAPI Logon dialog if required)
USE BUILTIN(MAIL_SET_OPTION)

...

 WITH_ARGS('MAPI_LOGON_UI'

...

 Y)

...

 TO_GET(#LEM_RETC)
**********

...

 COMMENT(Do not display MAPI Password Dialog)
**********

...

 COMMENT(mutually exclusive to MAPI_LOGON_UI))

...


USE BUILTIN(MAIL_SET_OPTION)

...

 WITH_ARGS('MAPI_PASSWORD_UI'

...

 N)

...

 TO_GET(#LEM_RETC)
**********

...

 COMMENT(Set Recipient using TO argument)
**********

...

 COMMENT(may also set others for TO CC BCC)
USE BUILTIN(MAIL_ADD_RECIPIENT)

...

 WITH_ARGS(

...

TO '<

...

-- name -->'

...

 'SMTP:<

...

-- recipient@address -->')

...

 TO_GET(#LEM_RETC)
**********

...

 COMMENT(To define attachment file remove comments)
***

...

 USE BUILTIN(MAIL_ADD_ATTACHMENT)

...

 WITH_ARGS('c:\config.sys'

...

 'MyConfig.txt')

...

 TO_GET(#LEM_RETC)
ELSE
**********

...

 COMMENT(Set Recipient using TO argument)
USE BUILTIN(MAIL_ADD_RECIPIENT)

...

 WITH_ARGS(

...

TO 'SMTP:<

...

-- recipient@address -->')

...

 TO_GET(#LEM_RETC)

...


ENDIF
IF COND(*HOST)
**********

...

 COMMENT(Define Message Originator if IBM i)
**********

...

 COMMENT(MAPI on non-IBM i usually defaults)
USE BUILTIN(MAIL_ADD_ORIGINATOR)

...

 WITH_ARGS('SMTP:<

...

-- recipient@address -->')

...

 TO_GET(#LEM_RETC)
ENDIF
**********

...

 COMMENT(Set receipt acknowledgement is required)
USE BUILTIN(MAIL_SET_OPTION)

...

 WITH_ARGS(RECEIPT_

...

REQUESTED Y) TO_GET(#LEM_RETC)
**********

...

 COMMENT(Set Subject text)
USE BUILTIN(MAIL_SET_SUBJECT)

...

 WITH_ARGS('

...

Testing Email Built-In Functions')

...

 TO_GET(#LEM_RETC)
**********

...

 COMMENT(Set message Text)
USE BUILTIN(MAIL_ADD_TEXT)

...

 WITH_ARGS('Hello,'

...

 Y)

...

 TO_GET(#LEM_RETC)

...


DEFINE FIELD(#BIGLINE)

...

 TYPE(*CHAR)

...

 LENGTH(255)

...

 LABEL('

...

Big Text Line')

...

 INPUT_ATR(LC)

...


CHANGE FIELD(#BIGLINE)

...

 TO('''

...

I am sending this message just to try out the LANSA Email Built-In Functions.''')

...


USE BUILTIN(MAIL_ADD_TEXT)

...

 WITH_ARGS(

...

#BIGLINE Y) TO_GET(#LEM_RETC)

...


USE BUILTIN(MAIL_ADD_TEXT)

...

 WITH_ARGS('

...

Thank You' N) TO_GET(#LEM_RETC)
**********

...

 COMMENT(Prompt to SEND the mail then send)
DEFINE FIELD(#LTEXT2)

...

 TYPE(*CHAR)

...

 LENGTH(1)

...

 DESC('

...

Press ENTER to SEND or CANCEL')
POP_

...

UP FIELDS((

...

#LTEXT2 *

...

L4 *

...

P4 *

...

DESC *NC))

...

 IDENTIFY(*LABEL)

...

 AT_LOC(

...

7 20) WITH_SIZE(

...

57 10) PANEL_TITL('

...

Confirm Mail Send...')

...

 EXIT_KEY(*NO)

...

 PROMPT_KEY(*NO)

...

 STD_HEAD(*YES)

...


USE BUILTIN(MAIL_SEND)

...

 TO_GET(#LEM_RETC)

...


IF COND(*OKAY)

...


MESSAGE MSGTXT('

...

Send SUCCESSFUL.')

...


ELSE
MESSAGE MSGTXT('Send FAILED.')
ENDIF
END_LOOP
**********

...