FP_SMTP_SET_GROUP

宛先グループの設定

このFP命令は、宛先グループを設定します。

パラメータ

入力

sGroupNumber (WORD, INT, UINT)

宛先グループ番号を設定します。

: 0~7

例: 'GRPNO=3'は、グループ3を宛先グループとして指定します。

sGroupName (STRING)

宛先グループ名を設定します(最大64文字)。

例: 'GRPNAME=Group3'は、「Group3」を宛先グループの名前として設定します。

sEMailAddresses (STRING)

宛先グループに所属するメンバーのメールアドレスを設定します(最大256文字)。メールアドレスはホスト名のみまたはホスト名+ドメイン名を指定可能です。ここでドメイン名を省略する場合、sEMailDomainで指定する必要があります。

変換例:

  1. 'TO=user@support.com'は、「user@support.com」を宛先メールアドレスとして設定します。ここにドメイン名が含まれている場合、sEMailDomainでドメイン名を設定する必要はありません。

  2. 'TO=user'および'DOMAIN=support.com'は、「user@support.com」を宛先メールアドレスとして設定します。

  3. 'TO=user@support.com,admin@helpcenter.com'は、2つの異なるドメインに2つのメールアドレスを設定します(「user@support.com」および「admin@helpcenter.com」)。

sEMailDomain (STRING)

ドメイン名を設定します(最大32文字)。指定可能なドメイン名は1つのみです。

ドメイン名を設定すると、sEMailAddressesでドメイン名を省略できます。これは複数のメールアドレスを設定する場合に役立ちます。

変換例:

  1. 'TO=user,admin,groupowner'および'DOMAIN=support.com'は、複数のメールアドレスを設定します(「user@support.com」、「admin@support.com」、および「groupowner@support.com」)。

  2. 'TO=user@support.com,admin,groupowner'および'DOMAIN=helpcenter.com'は、異なるドメインの複数のメールアドレスを指定します(「user@support.com」、「admin@helpcenter.com」、および「groupowner@helpcenter.com」)。

出力

bError (BOOL)

以下の条件でTRUEになります。

  • 接続のタイムアウトが経過した場合

  • IPアドレスが無効な場合

エラーが発生した場合は、エラーコード番号のシステム変数sys_iEthernetConnectionErrorCodeを確認してください。

解説

  • すべてのキーワードは、カンマで区切って登録します。例. 'NAME=abcd,FROM=sender@server.com'

  • 文字列データは、256文字以内にする必要があります。

  • この命令は、割り込みプログラム中で使用することはできません。

  • 指定するキーワードは、大文字、小文字とも使用することができます。 ただし、件名、メール本文、添付ファイルのファイル名では大文字と小文字が区別されます。

  • 命令を実行する前に、FP_SMTP_SET_CONNECTIONまたはSMTPクライアントの設定ダイアログを使用してメール転送サーバーを指定する必要があります。

  • 命令を実行する前にsys_bIsEthernetInitializingFALSEであることを確認してください。命令が実行されるとsys_bIsEthernetInitializingTRUEになります。sys_bIsEthernetInitializingTRUEのときに命令を実行すると、エラーが発生します。

  • 命令は、指定した転送設定用の転送要求フラグまたは指定したnLogID番号の転送要求フラグがFALSEの場合にのみ実行することができます。転送要求フラグがTRUEの場合、演算エラーが発生します。

  • この命令が正常に実行されると、システム変数sys_bIsCarryおよびsys_iEthernetConnectionErrorCodeがリセットされます。

  • エラーが発生した場合は、エラーコード番号のシステム変数sys_iEthernetConnectionErrorCodeを確認してください。

エラーフラグ

sys_bIsOperationErrorHold (TRUEになり、TRUEを保持)
  • パラメータに指定された値が許容範囲外の場合。

  • 命令が割り込みプログラム内で実行された場合。

  • 指定した転送設定用のメール転送要求フラグが「TRUE:転送要求済み」の場合。

  • 指定したnLogID番号の転送要求フラグがTRUEの場合。例:sys_blsLog0DataRecordingActiveTRUEの場合。

  • メール転送サーバーが命令FP_SMTP_SET_CONNECTIONで指定されても、SMTPクライアントの設定ダイアログで指定されてもいない場合。

  • sEMailDomainでドメイン名が設定されておらず、sEMailAddressesで設定されたメールアドレスがドメイン名なしで指定されている場合。

  • 文字列データが256文字を超えた場合。

sys_bIsOperationErrorNonHold (1回のスキャンに対してTRUE)
  • パラメータに指定された値が許容範囲外の場合。

  • 命令が割り込みプログラム内で実行された場合。

  • 指定した転送設定用のメール転送要求フラグが「TRUE:転送要求済み」の場合。

  • 指定したnLogID番号の転送要求フラグがTRUEの場合。例:sys_blsLog0DataRecordingActiveTRUEの場合。

  • メール転送サーバーが命令FP_SMTP_SET_CONNECTIONで指定されても、SMTPクライアントの設定ダイアログで指定されてもいない場合。

  • sEMailDomainでドメイン名が設定されておらず、sEMailAddressesで設定されたメールアドレスがドメイン名なしで指定されている場合。

  • 文字列データが256文字を超えた場合。

sys_bIsCarry (1回のスキャンに対してTRUE)
  • Ethernet初期化中に命令を実行した場合は、sys_iEthernetConnectionErrorCodeが「11:Ethernet初期化中」に設定されます。

POUヘッダ

POUヘッダには、このプログラムで使用するすべての入力変数と出力変数を宣言します。 POUヘッダは全プログラム言語で使用できます。

	VAR
		bSetGroup: BOOL:=FALSE;
		bError: BOOL:=FALSE;
	END_VAR

POUボディ

bSetGroupFALSEからTRUEに変わり、sys_bIsEthernetInitializingFALSEであると、命令が実行されます。

LDボディ

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 10 ;
        NETWORK_BODY
B(B_CONTACT,,bSetGroup,4,1,6,3,R);
B(B_CONTACT,,sys_bIsEthernetInitializing,12,1,14,3,N);
B(B_VARIN,,'GRPNO=0',16,5,18,7,);
B(B_VARIN,,'GRPNAME=Grp0',16,6,18,8,);
B(B_VARIN,,'TO=user@support.com',16,7,18,9,);
B(B_VARIN,,'DOMAIN=',16,8,18,10,);
B(B_VAROUT,,bError,30,5,32,7,);
B(B_F,FP_SMTP_SET_GROUP!,,18,3,30,10,,?DEN?DsGroupNumber?DsGroupName?DsEMailAddresses?DsEMailDomain?AENO?CbError);
L(1,2,4,2);
L(6,2,12,2);
L(14,2,14,5);
L(14,5,18,5);
L(1,0,1,10);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

STボディ

If DF(bSetGroup) AND NOT sys_bIsEthernetInitializing then
    FP_SMTP_SET_GROUP(sGroupNumber := 'GRPNO=0',
                      sGroupName := 'GRPNAME=Grp0',
                      sEMailAddresses := 'TO=user@support.com', 
                      sEMailDomain := 'DOMAIN=',
                      bError => bError);
End_if;

最終修正日: 2024-03-07このページに関するフィードバックお問い合わせ窓口