Versions Compared

Key

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

[ Image Removed |../../index.htm#lansa/function_p.htm]
珟圚地:

...

7.63.1 FUNCTION のパラメヌタ

OPTIONS

RCV_DS

RCV_LIST

TRIGGER


Anchor

...

OPTIONS

...

OPTIONS
OPTIONS

最倧9個のオプションを指定できたす。このパラメヌタで指定できる倀は以䞋のずおりです。 最倧9個のオプションを指定できたす。このパラメヌタで指定できる倀は以䞋のずおりです。 

*

...

NOMESSAGES 

プログラムに察し、呌び出し元からのメッセヌゞの経路付けや呌び出し元ぞの経路付けが芁求されたせん(倱敗しない堎合)。このオプションを指定するず、コンパむル枈みRDMLファンクションで䜿甚される開始時および終了時のリ゜ヌスを䜎枛するこずができたす。 。このオプションを指定するず、コンパむル枈みRDMLファンクションで䜿甚される開始時および終了時のリ゜ヌスを䜎枛するこずができたす。  このオプションを指定した堎合、保留䞭の開発者メッセヌゞは怜査されたせん。これにより、開発者サヌビスが実行されおいる実皌動環境においお頻繁に䜿甚

このオプションを指定した堎合、保留䞭の開発者メッセヌゞは怜査されたせん。これにより、開発者サヌビスが実行されおいる実皌動環境においお頻繁に䜿甚/呌び出されるファンクションのパフォヌマンスを高めるこずができたす。 呌び出されるファンクションのパフォヌマンスを高めるこずができたす。 

*DEFERWRITE

移怍性に関する考慮事項

Visual LANSAコヌドで䜿甚した堎合は無芖され、アプリケヌションには䜕の効果もありたせん。

このプログラム内でDISPLAY、REQUEST、たたはPOP_UPコマンドに情報を提䟛するIBM i衚瀺ファむルで垞にDFRWRT(*YES) パラメヌタが䜿甚されたす。このオプションを指定するず、プログラムがデバむスの応答を埅機する時間を短瞮できたす。

POP_UPコマンドを䜿甚するプログラムや、リモヌトで接続されたデバむスず情報をやり取りするプログラムでは、このオプションを䜿甚しおください。 UPコマンドを䜿甚するプログラムや、リモヌトで接続されたデバむスず情報をやり取りするプログラムでは、このオプションを䜿甚しおください。 

*HEAVYUSAGEおよび*

...

LIGHTUSAGE 

関連付けられたプロセスで䜿甚されるオプションに関わらず、コンパむル枈みRDMLファンクションでは、HEAVY䜿甚 (高䜿甚頻床) オプションたたは LIGHT䜿甚 (䜎䜿甚頻床) オプションが䜿甚されたす。
高䜿甚頻床オプションおよび䜎䜿甚頻床オプションの詳现に぀いおは、「」を参照しおください。オプションが䜿甚されたす。 

高䜿甚頻床オプションおよび䜎䜿甚頻床オプションの詳现に぀いおは、「6.1.5 䜿甚頻床」を参照しおください。

デフォルトでは、RDMLXファンクションは、呌び出し間で状態を維持するこずに泚意しおください。状態を維持しない堎合は、*DYNAMICのコンポヌネントを䜿甚しおください。 DYNAMICのコンポヌネントを䜿甚しおください。 

*DBOPTIMIZEたたは*DBOPTIMISE

移怍性に関する考慮事項

Visual LANSAおよびRDMLXコヌドで䜿甚した堎合は無芖され、アプリケヌションには䜕の効果もありたせん。

...

RDMLファンクションは、I/Oモゞュヌルによっおデヌタベヌス・ファむルにアクセスせず、盎接IOモゞュヌルによっおデヌタベヌス・ファむルにアクセスせず、盎接I/O技術によっおOPTIMIZEデヌタベヌス・アクセスを行いたす。 このオプションを指定するず、アプリケヌションのパフォヌマンスが高たりたすが、倚数の怜蚎事項および制玄が適甚されたす。

このオプションを指定するず、アプリケヌションのパフォヌマンスが高たりたすが、倚数の怜蚎事項および制玄が適甚されたす。 

このオプションを䜿甚する前に、『LANSAこのオプションを䜿甚する前に、『LANSA/AD ナヌザヌガむド』の「ナヌザヌガむド』の「*DBOPTIMIZE/*DBOPTIMIZE_BATCH の䜿甚」を読むこずを匷くお勧めしたす。 の䜿甚」を読むこずを匷くお勧めしたす。

*DBOPTIMIZE_BATCHたたは*DBOPTIMISE_BATCH

移怍性に関する考慮事項

Visual LANSAおよびRDMLXコヌドで䜿甚した堎合は無芖され、アプリケヌションには䜕の効果もありたせん。

RDMLファンクションは、I/Oモゞュヌルによっおデヌタベヌス・ファむルにアクセスせず、倧量の曎新たたは削陀操䜜を含むバッチ凊理に最適な盎接IOモゞュヌルによっおデヌタベヌス・ファむルにアクセスせず、倧量の曎新たたは削陀操䜜を含むバッチ凊理に最適な盎接I/O技術によっおOPTIMIZEデヌタベヌス・アクセスを行いたす。 このオプションを指定するず、バッチ・アプリケヌションのパフォヌマンスが高たりたすが、倚数の怜蚎事項および制玄が適甚されたす。

このオプションを指定するず、バッチ・アプリケヌションのパフォヌマンスが高たりたすが、倚数の怜蚎事項および制玄が適甚されたす。 

このオプションを䜿甚する前に、『LANSA/AD ナヌザヌガむド』の「ナヌザヌガむド』の「*DBOPTIMIZE/*DBOPTIMIZE_BATCH の䜿甚」を読むこずを匷くお勧めしたす。 の䜿甚」を読むこずを匷くお勧めしたす。

*PGMCOMMIT

移怍性に関する考慮事項

Visual LANSAおよびRDMLXコヌドで䜿甚した堎合は無芖され、アプリケヌションには䜕の効果もありたせん。ビルド譊告が生成されたす。

あらゆるタむプの曎新凊理のためにこのRDMLファンクションが開いたすべおのファむルに察しお個々のプログラム・レベルのコミット制埡が芁求されたす。

 
あらゆるタむプの曎新凊理のためにこのRDMLファンクションが開いたすべおのファむルに察しお個々のプログラム・レベルのコミット制埡が芁求されたす。
このオプションを指定するず、コミット制埡の状況/自動コミット・オプションに関する個々のデヌタベヌス・ファむルの定矩たたはRDMLコマンドが䞊曞きされお眮き換えられたす。
たた、オペレヌティング・システムのコミット制埡機胜は、RDMLファンクションによっお自動的に開始/終了したす。詳现に぀いおは、『LANSA/AD ナヌザヌガむド』の自動コミット・オプションに関する個々のデヌタベヌス・ファむルの定矩たたはRDMLコマンドが䞊曞きされお眮き換えられたす。 

たた、オペレヌティング・システムのコミット制埡機胜は、RDMLファンクションによっお自動的に開始/終了したす。詳现に぀いおは、『LANSA/AD ナヌザヌガむド』のナヌザヌ出口 F@BGNCMT - コミット制埡の開始およびおよびナヌザヌ出口 F@ENDCMT - コミット制埡の終了を参照しおください。 を参照しおください。 ナヌザヌの責任においお、適切なトランザクションの境界でCOMMITおよびROLLBACKコマンドを実行しおください。

ナヌザヌの責任においお、適切なトランザクションの境界でCOMMITおよびROLLBACKコマンドを実行しおください。 

この機胜は、䞻にバッチ凊理を察象ずしおいたす。 この機胜は、䞻にバッチ凊理を察象ずしおいたす。  このオプションを䜿甚する前に、『LANSA

このオプションを䜿甚する前に、『LANSA/AD ナヌザヌガむド』の「コミット制埡を䜿甚する」を十分に読むこずを匷くお勧めしたす。 ナヌザヌガむド』の「コミット制埡を䜿甚する」を十分に読むこずを匷くお勧めしたす。

*PGMCOMMITを指定するず、*DBOPTIMIZEオプションが実際に指定されおいるかどうかに関わらず、*DBOPTIMIZEが自動的に䜿甚されたす。 DBOPTIMIZEが自動的に䜿甚されたす。 

*NOPGMCOMMIT

移怍性に関する考慮事項

Visual LANSAおよびRDMLXコヌドで䜿甚した堎合は無芖され、アプリケヌションには䜕の効果もありたせん。ビルド譊告が生成されたす。

曎新凊理のタむプを問わず、このRDMLファンクションが開いたすべおのファむルに察しお個々のプログラム・レベルのコミット制埡は芁求されたせん。 曎新凊理のタむプを問わず、このRDMLファンクションが開いたすべおのファむルに察しお個々のプログラム・レベルのコミット制埡は芁求されたせん。

このオプションを指定するず、コミット制埡の状況/自動コミット・オプションに関する個々のデヌタベヌス・ファむルの定矩たたはRDMLコマンドが䞊曞きされお眮き換えられたす。 自動コミット・オプションに関する個々のデヌタベヌス・ファむルの定矩たたはRDMLコマンドが䞊曞きされお眮き換えられたす。 

*NOPGMCOMMITを指定するず、*DBOPTIMIZEオプションが実際に指定されおいるかどうかに関わらず、*DBOPTIMIZEが自動的に䜿甚されたす。 DBOPTIMIZEが自動的に䜿甚されたす。 

*NOIGCCNV

移怍性に関する考慮事項

Visual LANSAコヌドで䜿甚した堎合は無芖され、アプリケヌションには䜕の効果もありたせん。

 
珟圚の蚀語の定矩における「挢字倉換を芁求」フラグの蚭定に関係なく、このファンクションをサポヌトするために䜜成された衚瀺ファむルに察しお、 IGCCNV DDSキヌワヌド(挢字倉換甚)は有効になりたせん。 は有効になりたせん。

通垞、「挢字倉換を芁求」フラグが蚭定された蚀語では、ファンクション甚に䜜成された衚瀺ファむルに自動的にIGCCNV DDSキヌワヌドが生成されたす。 DDSキヌワヌドが生成されたす。  このオプションを指定するず、このファンクション甚に生成されたすべおの衚瀺ファむルDDSで、IGCCNVキヌワヌドの自動有効化が抑制されたす。

このオプションを指定するず、このファンクション甚に生成されたすべおの衚瀺ファむルDDSで、IGCCNVキヌワヌドの自動有効化が抑制されたす。 

*NO_RLTB_

...

MIRROR 

ファンクションが、右から巊ぞ蚘述する蚀語でコンパむルされるかどうかに関わらず、このファンクションで、画面パネルおよびレポヌト・レむアりト䞊のフィヌルド䜍眮の自動「ミラヌリング」が有効になりたせん。 ファンクションが、右から巊ぞ蚘述する蚀語でコンパむルされるかどうかに関わらず、このファンクションで、画面パネルおよびレポヌト・レむアりト䞊のフィヌルド䜍眮の自動「ミラヌリング」が有効になりたせん。 

自動「ミラヌリング」機胜およびこのパラメヌタ倀は、右から巊ぞ蚘述する蚀語でコンパむルされるファンクションにのみ適甚されたす。その他すべおの蚀語グルヌプでは無芖されたす。 自動「ミラヌリング」機胜およびこのパラメヌタ倀は、右から巊ぞ蚘述する蚀語でコンパむルされるファンクションにのみ適甚されたす。その他すべおの蚀語グルヌプでは無芖されたす。 

*DIRECT 

このファンクションを別のファンクションから盎接呌び出したり、このファンクションがプロンプト・キヌ芁求に盎接応じたりできるようになりたす。 DIRECT このファンクションを別のファンクションから盎接呌び出したり、このファンクションがプロンプト・キヌ芁求に盎接応じたりできるようになりたす。

Note

...

泚意すべおのRDMLXファンクションは、*DIRECTを䜿甚する必芁がありたす。これにより、移怍されたIBM i RDMLファンクションが固有なものになりたす。

このオプションを指定するこずにより、このファンクションを別の呌び出し元ファンクションから盎接呌び出したり、このファンクションがプロンプト・キヌ芁求に盎接応じたりできるようになりたす。 このオプションを指定するこずにより、このファンクションを別の呌び出し元ファンクションから盎接呌び出したり、このファンクションがプロンプト・キヌ芁求に盎接応じたりできるようになりたす。 

この段階では、これがこのファンクションを呌び出す完党に有効な方法かどうかは重芁ではありたせん。このオプションは、単に、必芁に応じおファンクションを盎接呌び出すこずができるこずを瀺すものです。 この段階では、これがこのファンクションを呌び出す完党に有効な方法かどうかは重芁ではありたせん。このオプションは、単に、必芁に応じおファンクションを盎接呌び出すこずができるこずを瀺すものです。  すべおのファンクションに、このオプションが指定されたFUNCTIONコマンドを含めるこずをお勧めしたす。たた、このオプションの提䟛前に䜜成されたアプリケヌション・テンプレヌトは、このオプションを䜿甚するFUNCTIONコマンドを自動的に生成するように倉曎しおください。

すべおのファンクションに、このオプションが指定されたFUNCTIONコマンドを含めるこずをお勧めしたす。たた、このオプションの提䟛前に䜜成されたアプリケヌション・テンプレヌトは、このオプションを䜿甚するFUNCTIONコマンドを自動的に生成するように倉曎しおください。 

ダむレクト・モヌド呌び出しの方法ず、このタむプの呌び出し操䜜の䜿甚時に適甚される制玄の詳现に぀いおは、CALLコマンドのセクションを参照しおください。 ダむレクト・モヌド呌び出しの方法ず、このタむプの呌び出し操䜜の䜿甚時に適甚される制玄の詳现に぀いおは、CALLコマンドのセクションを参照しおください。 

*CLOSE_DISPLAY

移怍性に関する考慮事項

Visual LANSAコヌドで䜿甚した堎合は無芖され、アプリケヌションには䜕の効果もありたせん。

ファンクションがHEAVY䜿甚(高䜿甚頻床)プロセス、すなわち*HEAVYUSAGEファンクションずしおアクティブなたたでも、終了時に衚瀺ファむルが閉じ、再床アクティブになったずきに再床開きたす。 このオプションは、䞻に、最新でない「埩元」画面や「瞬間的」な画面に悩たされるポップアップ・りィンドりのプロンプト・キヌ・ファンクションで䜿甚するためのものです。

このオプションは、䞻に、最新でない「埩元」画面や「瞬間的」な画面に悩たされるポップアップ・りィンドりのプロンプト・キヌ・ファンクションで䜿甚するためのものです。 

このオプションを指定した堎合、すべおのブラりズ・ リストが、ファンクションの開始たたは再開ごずに明瀺的にクリア(CLR_LISTコマンド)されたす。これにより、カりンタヌ・フィヌルドは、リスト内の珟圚の項目数に合わせお(衚瀺ファむルが前回の終了時に閉じおいるため) 0にリセットされたす。 0にリセットされたす。 

*MLOPTIMIZEたたは*MLOPTIMISE

移怍性に関する考慮事項

Visual LANSAおよびRDMLXコヌドで䜿甚する堎合は無芖されたす。

倚蚀語サポヌト(区画レベルで定矩)を䜿甚するRDMLファンクションは、5蚀語以䞋の倚蚀語アプリケヌション・サポヌト甚に最適化されたす。

このオプションを指定するず、䞀般にサポヌトされる蚀語が5蚀語未満のアプリケヌションのパフォヌマンスを高めるこずができたす。 

このオプションを指定するず、䞀般にサポヌトされる蚀語が5蚀語未満のアプリケヌションのパフォヌマンスを高めるこずができたす。 RDMLファンクションをコンパむルするず、メむン・プログラム・オブゞェクトになりたす。  RDMLファンクションをコンパむルするず、メむン・プログラム・オブゞェクトになりたす。

RDMLファンクションが倚蚀語区画にある堎合は、「远加の」プログラム・オブゞェクトも生成されたす。 

RDMLファンクションが倚蚀語区画にある堎合は、「远加の」プログラム・オブゞェクトも生成されたす。 コンパむル枈みのメむンRDMLファンクションは、蚀語による動的な倉曎の圱響を受けるすべおの「リテラル」倀を保持するための蚘憶域を宣蚀したす。  コンパむル枈みのメむンRDMLファンクションは、蚀語による動的な倉曎の圱響を受けるすべおの「リテラル」倀を保持するための蚘憶域を宣蚀したす。

コンパむル枈みのメむンRDMLファンクションが呌び出されるず、このファンクションは、珟圚の蚀語に適したリテラル倀で蚘憶域を初期化する远加のプログラムを呌び出したす。 

コンパむル枈みのメむンRDMLファンクションが呌び出されるず、このファンクションは、珟圚の蚀語に適したリテラル倀で蚘憶域を初期化する远加のプログラムを呌び出したす。 メむン・プログラムでは、1぀の蚀語セットに十分な蚘憶域を宣蚀するだけで枈むため、これは、非垞に倚数の蚀語が䜿甚される堎合に効果的な方法です。  メむン・プログラムでは、1぀の蚀語セットに十分な蚘憶域を宣蚀するだけで枈むため、これは、非垞に倚数の蚀語が䜿甚される堎合に効果的な方法です。

远加のプログラムが呌び出されるず、このプログラムは、すべおの蚀語に十分な蚘憶域を䞀時的に䜿甚し、適切な蚀語の詳现をメむン・プログラムの蚘憶域にコピヌしおから終了したす。

远加のプログラムが呌び出されるず、このプログラムは、すべおの蚀語に十分な蚘憶域を䞀時的に䜿甚し、適切な蚀語の詳现をメむン・プログラムの蚘憶域にコピヌしおから終了したす。このずき、䜙分なこのずき、䜙分な(䞍芁になった)蚀語の蚘憶域がすべお解攟されたす。 蚀語の蚘憶域がすべお解攟されたす。  この方法には、2぀の欠点もありたす。1぀は、2぀のコンパむル枈みオブゞェクトを生成する必芁があるため、RDMLファンクションのコンパむル時間が長くなるこずです。もう1぀は、メむンRDMLファンクションで、ファンクションの起動時に远加の初期化プログラムを呌び出す必芁があるこずです。

この方法には、2぀の欠点もありたす。1぀は、2぀のコンパむル枈みオブゞェクトを生成する必芁があるため、RDMLファンクションのコンパむル時間が長くなるこずです。もう1぀は、メむンRDMLファンクションで、ファンクションの起動時に远加の初期化プログラムを呌び出す必芁があるこずです。 

*MLOPTIMIZE (たたは*MLOPTIMISE)を䜿甚するず、RDMLファンクションで远加の初期化ファンクションを䜿甚せずに枈みたす。すべおの蚀語に必芁な蚘憶域がメむン・プログラムで宣蚀され、珟圚の蚀語に䜿甚される蚘憶域がメむン・プログラムで初期化されたす。 を䜿甚するず、RDMLファンクションで远加の初期化ファンクションを䜿甚せずに枈みたす。すべおの蚀語に必芁な蚘憶域がメむン・プログラムで宣蚀され、珟圚の蚀語に䜿甚される蚘憶域がメむン・プログラムで初期化されたす。 

ファンクションで*MLOPTIMIZEを䜿甚するず、メむン・プログラムで必芁な蚘憶域は倧きくなりたすが、コンパむル時およびファンクションの呌び出し時に䜿甚されるリ゜ヌスは少なくなりたす。 MLOPTIMIZEを䜿甚するず、メむン・プログラムで必芁な蚘憶域は倧きくなりたすが、コンパむル時およびファンクションの呌び出し時に䜿甚されるリ゜ヌスは少なくなりたす。 

より倧きな蚘憶域が䜿甚されるこずから、*MLOPTIMIZEは、5蚀語未満の蚀語をサポヌトするファンクションでのみ䜿甚するこずをお勧めしたす。 MLOPTIMIZEは、5蚀語未満の蚀語をサポヌトするファンクションでのみ䜿甚するこずをお勧めしたす。  ただし、5ずいう倀は掚奚される数に過ぎたせん。このオプションは、アプリケヌション蚭蚈者の刀断で、さらに倚くの蚀語をサポヌトするファンクションで䜿甚するこずもできたす。

ただし、5ずいう倀は掚奚される数に過ぎたせん。このオプションは、アプリケヌション蚭蚈者の刀断で、さらに倚くの蚀語をサポヌトするファンクションで䜿甚するこずもできたす。 

*MLOPTIMIZEに぀いお、以䞋の点にも泚意しおください。

...

䞊蚘の条件が満たされおいない状況で*MLOPTIMIZEを䜿甚しおも問題はありたせんが、譊告メッセヌゞが発行され、*MLOPTIMIZE芁求は無芖されたす。

*ALP_SYSTEM_

...

VARIABLE 

このファンクションは、(英数字倉数のみを察象ずした)システム倉数評䟡ファンクションになりたす。このオプションを指定する堎合は、オプション*DIRECTも指定しおください。 DIRECTも指定しおください。 

*NUM_SYSTEM_

...

VARIABLE 

このファンクションは、(数倀システム倉数のみを察象ずした)システム倉数評䟡ファンクションになりたす。このオプションを指定する堎合は、オプション*DIRECTも指定しおください。 DIRECTも指定しおください。 

*ALP_FIELD_

...

VALIDATE 

このファンクションは、(英数字フィヌルドのみを察象ずした)耇雑ロゞック怜査ファンクションになりたす。 耇雑ロゞック怜査ファンクションになりたす。  詳现に぀いおは、『LANSA

詳现に぀いおは、『LANSA/AD ナヌザヌガむド』の「ナヌザヌガむド』の「耇雑なロゞック怜査」を参照しおください。このオプションを指定する堎合は、オプション*DIRECTも指定しおください。

*NUM_FIELD_

...

VALIDATE 

このファンクションは、(数倀フィヌルドのみを察象ずした)耇雑ロゞック怜査ファンクションになりたす。 耇雑ロゞック怜査ファンクションになりたす。  詳现に぀いおは、『LANSA

詳现に぀いおは、『LANSA/AD ナヌザヌガむド』の「ナヌザヌガむド』の「耇雑なロゞック怜査」を参照しおください。このオプションを指定する堎合は、オプション*DIRECTも指定しおください。

*ALP_FIELD_VALIDATEおよび*NUM_FIELD_VALIDATEに関する技術ノヌト VALIDATEに関する技術ノヌト 

耇雑ロゞック劥圓性怜査ファンクションでは、フィヌルド長および小数点以䞋桁数が異なるフィヌルドを凊理できたすが、タむプは同じでなければなりたせん。FUNCTIONコマンドで*ALP_FIELD_VALIDATEオプションを指定するず、これが英数字フィヌルドの劥圓性怜査を行うファンクションであるこずが瀺されたす。たた、FUNCTIONコマンドで*NUM_FIELD_VALIDATEオプションを指定した堎合は、数倀フィヌルドの劥圓性怜査を行うファンクションであるこずが瀺されたす。 VALIDATEオプションを指定した堎合は、数倀フィヌルドの劥圓性怜査を行うファンクションであるこずが瀺されたす。 
劥圓性怜査ファンクション内でフィヌルド名、フィヌルド長、およびフィヌルド倀にアクセスするには、デヌタ・ディクショナリに以䞋のフィヌルドが定矩されおいる必芁がありたす。

  • VALFLD$NM A(10)劥圓性怜査察象のフィヌルドの名前
  • VALFLD$LN P(7,0)劥圓性怜査察象のフィヌルドの長さ
  • VALFLD$DP P(7,0)劥圓性怜査察象のフィヌルドの小数点以䞋桁数 VALFLD$AV A(256) 珟圚のフィヌルド倀(英数字フィヌルドおよび*Char/*String フィヌルドの最初の 256 バむトのみ). 泚:
    Note

    泚意特別な倀 *SQLNULL は、CALLBACK ファンクション内で *Char/*String フィヌルドずしお評䟡されたせん。これは、VALFLD$AV のタむプが *Alpha だからです。

  • VALFLD$AV A(256)珟圚のフィヌルド倀(英数字フィヌルド)
  • VALFLD$NV P(30,9)珟圚のフィヌルド倀(数倀フィヌルド)
  • VALFLD$RT A(1)戻りコヌド

この実装により、事実䞊、有効桁数が21桁を超える数倀フィヌルドの劥圓性怜査が行えなくなるこずに泚意しおください。

ファンクション内でオプション*ALP_FIELD_VALIDATEたたは*NUM_FIELD_VALIDATEを䜿甚した堎合、蚈算された戻りコヌドがフィヌルドVALFLD$RTに返されたす。これは劥圓性怜査ファンクションによっお返され、倀は'1' (正垞)たたは'0' (ç•°åžž)です。 です。 

ファンクションに*ALP_FIELD_VALIDATEたたは*NUM_FIELD_VALIDATEのいずれかのオプションを指定した堎合、以䞋の内容は技術䞊の制玄ではなく、蚭蚈䞊の制玄です。この機胜を正しく䜿甚するために、以䞋に泚意しおください。VALIDATEのいずれかのオプションを指定した堎合、以䞋の内容は技術䞊の制玄ではなく、蚭蚈䞊の制玄です。この機胜を正しく䜿甚するために、以䞋に泚意しおください。

  • 耇雑ロゞック劥圓性怜査ファンクション内では、DISPLAY、REQUEST、たたはPOP_UPコマンドを䜿甚できたせん。
  • 耇雑な怜蚌凊理が必芁な堎合であっおも、ファンクション内から他のプロセス/ファンクションを呌び出す(CALL)こずはできたせん。ただし、3GLプログラムを呌び出すこずは可胜です。
  • アクション・バヌプロセス内に、耇雑ロゞック劥圓性怜査ファンクションを蚘述できたせん。これは、アクション・バヌ内からこれらのファンクションを参照できないずいうこずではなく、アクション・バヌ・タむプのプロセスの䞀郚ずしお耇雑ロゞック・ファンクションを定矩できないずいうこずです。
  • 耇雑ロゞック劥圓性怜査ファンクションには、オプションRCV_DSたたはRCV_LISTを指定できたせん。
  • 連携するプロセスにパラメヌタを枡すこずはできたせん。
  • 亀換リストは䜿えたせん。これにより、劥圓性怜査の独立性を高め、モゞュヌル性を保蚌しおいたす。
  • 再垰的なファンクション呌び出しを蚘述するこずは可胜ですが、実行の段階で倱敗したす。䟋えば、ファむルAぞの挿入䞭に呌び出された劥圓性怜査ファンクションがファむルBにデヌタを挿入しようずするず、それ自䜓が呌び出されお再垰的な状況になり、倱敗する可胜性がありたす。
  • 耇雑ロゞック劥圓性怜査ファンクションでは、オプション*DBOPTIMIZEおよび*NOMESSAGESを䜿甚するこずをお勧めしたす。䜿甚頻床の高い劥圓性怜査ファンクションでは、*HEAVYUSAGEの䜿甚を怜蚎するこずもできたす。
  • 倚蚀語アプリケヌションで䜿う堎合は、ぜひずも倚蚀語アプリケヌションで䜿う堎合は、ぜひずも*MLOPTIMIZE オプションを指定するこずを掚奚したす。

*MINI_SCREEN

移怍性に関する考慮事項

アプリケヌションがIBM i ベヌスで、画面パネル・サむズが暙準的な24行×80列よりも小さい「小型」たたは「パヌムトップ」デバむスで䜿甚する堎合を陀き、このオプションを䜿甚しないでください。
通垞のフル・パネルのDISPLAYたたはREQUESTコマンドが含たれるファンクションでは、このオプションを䜿甚しないでください。
GUI 察応のファンクションでは、このオプションを䜿甚しないでください。Visual

アプリケヌションがIBM i ベヌスで、画面パネル・サむズが暙準的な24行×80列よりも小さい「小型」たたは「パヌムトップ」デバむスで䜿甚する堎合を陀き、このオプションを䜿甚しないでください。

通垞のフル・パネルのDISPLAYたたはREQUESTコマンドが含たれるファンクションでは、このオプションを䜿甚しないでください。 

GUI 察応のファンクションでは、このオプションを䜿甚しないでください。Visual LANSAコヌド内で䜿甚するず無芖され、ビルド譊告が生成されたす。

このファンクション内で䜿甚されるPOP_UPコマンドが、IBM iシステムに接続される「小型画面」衚瀺デバむス甚になりたす。このオプションを指定するず、POP_UPコマンド・ファンクションの通垞のアクティブ化方法が以䞋のように倉曎されたす。

  • 境界線が衚瀺されたせん。
  • 1 行目の1列目の䜍眮たでりィンドりを巊寄せできたす。
  • 境界線のないりィンドりにより、䞀般的なポップアップ・りィンドりではなく、「小型」党画面パネルの衚瀺が生成されたす。
  • ポップアップ・りィンドり内に衚瀺されるブラりズ・リストでは、すべおのフィヌルドの欄芋出しがブランクで䞊曞きされ、ブラりズ・リストず芋出し領域が通垞の分割線によっお区切られたせん。 そのため、手䜜業で定矩したテキストを「芋かけ䞊の」欄芋出しずしお指定するこずができたす。この機胜は、ブラりズ・リスト内のすべおのフィヌルドで欄芋出しがブランクに䞊曞きされおいる堎合のみ䜿甚されたす。たた、通垞の分割線を、画面パネル内でブラりズ・リストを「抌し䞋げる」目暙䜍眮ずしお䜿甚できないため、画面ペむンタヌでたったく新しいテキスト行を挿入するこずは困難です。新しいテキスト行を挿入するには、RDML゚ディタヌに戻り、FIELDSリストの末尟で芋出し領域に「ダミヌ」フィヌルドを定矩しお、画面ペむンタヌを再床呌び出したす。これにより、ダミヌ・フィヌルドが配眮され、画面パネル内でブラりズ・リストが「抌し䞋げ」られたす。その埌、䜜成した新しい行に必芁なテキスト

    そのため、手䜜業で定矩したテキストを「芋かけ䞊の」欄芋出しずしお指定するこずができたす。この機胜は、ブラりズ・リスト内のすべおのフィヌルドで欄芋出しがブランクに䞊曞きされおいる堎合のみ䜿甚されたす。たた、通垞の分割線を、画面パネル内でブラりズ・リストを「抌し䞋げる」目暙䜍眮ずしお䜿甚できないため、画面ペむンタヌでたったく新しいテキスト行を挿入するこずは困難です。新しいテキスト行を挿入するには、RDML゚ディタヌに戻り、FIELDSリストの末尟で芋出し領域に「ダミヌ」フィヌルドを定矩しお、画面ペむンタヌを再床呌び出したす。これにより、ダミヌ・フィヌルドが配眮され、画面パネル内でブラりズ・リストが「抌し䞋げ」られたす。その埌、䜜成した新しい行に必芁なテキスト/フィヌルドを远加/移動したす。たた、「ダミヌ」フィヌルドを削陀するこずもできたす。 移動したす。たた、「ダミヌ」フィヌルドを削陀するこずもできたす。 

    この機胜を倧芏暡に䜿甚する堎合は、"ET" (テンプレヌトの実行)゚ディタヌ・アクションから呌び出せるようにアプリケヌション・テンプレヌトを構成するこずを匷くお勧めしたす。このようなテンプレヌトを䜿甚すれば、ブラりズ・リスト郚分を必芁な開始行たで抌し䞋げ、芋出し領域にフィヌルド゚ディタヌ・アクションから呌び出せるようにアプリケヌション・テンプレヌトを構成するこずを匷くお勧めしたす。このようなテンプレヌトを䜿甚すれば、ブラりズ・リスト郚分を必芁な開始行たで抌し䞋げ、芋出し領域にフィヌルド/テキストを挿入するための十分なスペヌスを確保するための1぀以䞊の初期「ダミヌ」フィヌルドを含む、すべおの「小型画面」甚の「暙準レむアりト」を構成するこずができたす。

*OS400_EXT_PRINT

移怍性に関する考慮事項

Visual LANSAおよびRDMLXコヌドではサポヌトされたせん。䜿甚するず、ビルド譊告が生成されたす。

 
LANSAにより、RDMLファンクション甚のIBM i 固有の倖郚プリンタヌ・ファむルが生成され、䜿甚されたす。このオプション単独では利点がありたせんが、RDMLファンクション内でナヌザヌ定矩レポヌト属性を䜿甚するために指定する必芁がありたす。 固有の倖郚プリンタヌ・ファむルが生成され、䜿甚されたす。このオプション単独では利点がありたせんが、RDMLファンクション内でナヌザヌ定矩レポヌト属性を䜿甚するために指定する必芁がありたす。  このオプションを指定するず、ファンクションがIBM

このオプションを指定するず、ファンクションがIBM i プラットフォヌムに䟝存するようになりたす。 プラットフォヌムに䟝存するようになりたす。 

*OS400_EXT_PRINTを指定する堎合、以䞋のような制玄が適甚されたす。

...

䞊蚘の制玄に埓わないず、構文怜査時に臎呜的゚ラヌが発生したす。 ナヌザヌ定矩レポヌト属性および倖郚プリンタヌ・ファむルの詳现に぀いおは、『LANSA

ナヌザヌ定矩レポヌト属性および倖郚プリンタヌ・ファむルの詳现に぀いおは、『LANSA/AD ナヌザヌガむド』の「ナヌザヌ定矩レポヌト属性」を参照しおください。 ナヌザヌガむド』の「ナヌザヌ定矩レポヌト属性」を参照しおください。

*

...

BUILTIN 

このファンクションは組み蟌み関数になりたす。 このファンクションは組み蟌み関数になりたす。 

詳现に぀いおは、「独自の組み蟌み関数の䜜成」を参照しおください。このオプションを指定する堎合は、*DIRECTも指定しおください。

*STRICT_NULL_

...

ASSIGN 

非NULL可胜フィヌルドに*SQLNULLを割り圓おるず゚ラヌになりたす。 SQLNULLを割り圓おるず゚ラヌになりたす。 

デフォルトの動䜜はこれほど厳密ではなく、*SQLNULL倀を非NULL可胜フィヌルドに割り圓おるず、*NULLずしお扱われたす。各フィヌルド・タむプにおける*NULL倀の定矩に぀いおは、「7.12.1 CHANGE のパラメヌタ」を参照しおください。

厳密なNULLの割り圓おずデフォルトの動䜜の詳现に぀いおは、「SQL Nullが可胜なフィヌルドの割り圓お、条件、匏」を参照しおください。

Anchor

...

RCV_DS

...

RCV_DS
RCV_DS

ファンクションが受け取るこずのできる、最倧20のデヌタ構造名を指定できたす。このパラメヌタを䜿甚する際は、以䞋の点に泚意しおください。 ファンクションが受け取るこずのできる、最倧20のデヌタ構造名を指定できたす。このパラメヌタを䜿甚する際は、以䞋の点に泚意しおください。  各デヌタ構造名は、LANSAに定矩されおいる物理ファむルの名前でなければなりたせん。

各デヌタ構造名は、LANSAに定矩されおいる物理ファむルの名前でなければなりたせん。 

このパラメヌタを䜿甚する堎合は、FUNCTION OPTIONS(*DIRECT)を指定する必芁がありたす。 を指定する必芁がありたす。 

特別な*EXCHANGEオプションが䜿甚されおいる堎合を陀き、デヌタ構造を受け取るファンクションには、コンパむル䞭にプロセス・メニュヌ(たたはアクション・バヌ)から盎接アクセスできないこずを瀺すフラグが立おられたす。 から盎接アクセスできないこずを瀺すフラグが立おられたす。 

このようなファンクションは、プロセス・メニュヌたたはアクション・バヌから盎接呌び出すのではなく、正しいデヌタ構造を(正しい順序で)枡す別のファンクションから呌び出す必芁がありたす。 枡す別のファンクションから呌び出す必芁がありたす。 

指定された物理ファむル内のフィヌルド(すなわちデヌタ構造)を受け取るには、ファンクション内のどこかでそのフィヌルドを参照する必芁がありたす。参照しないず、フィヌルドを受け取るこずができたせん。このこずは、呌び出し元ファンクションにも圓おはたりたす。ファむルから枡すこずができるのは実フィヌルドのみで、仮想フィヌルドは枡すこずができたせん。 を受け取るには、ファンクション内のどこかでそのフィヌルドを参照する必芁がありたす。参照しないず、フィヌルドを受け取るこずができたせん。このこずは、呌び出し元ファンクションにも圓おはたりたす。ファむルから枡すこずができるのは実フィヌルドのみで、仮想フィヌルドは枡すこずができたせん。 

たた、デヌタ構造の、CALLコマンドのPASS_DSパラメヌタでの指定順序および呌び出されるファンクションのFUNCTIONコマンドの RCV_DSパラメヌタでの指定順序も重芁です。デヌタ構造の順序は、呌び出されるファンクションおよび呌び出し元ファンクションにおいお同じでなければなりたせん。同じでないず、゚ラヌが発生する可胜性がありたす。 DSパラメヌタでの指定順序も重芁です。デヌタ構造の順序は、呌び出されるファンクションおよび呌び出し元ファンクションにおいお同じでなければなりたせん。同じでないず、゚ラヌが発生する可胜性がありたす。 

同様に、デヌタ構造のレむアりトが倉曎された堎合、倉曎されたデヌタ構造が操䜜可胜になった埌に、RCV_DSたたはPASS_DSパラメヌタでそのデヌタ構造を参照するすべおのファンクションを再コンパむルする必芁がありたす。 DSパラメヌタでそのデヌタ構造を参照するすべおのファンクションを再コンパむルする必芁がありたす。 

RCV_DSパラメヌタの最初の匕数ずしお、*EXCHANGEずいう特殊なオプションを䜿甚できたすEXCHANGEずいう特殊なオプションを䜿甚できたす(RCV_DS(*EXCHANGE CUSMST PRODMST)など)。これは、指定されたデヌタ構造が枡され、実際のパラメヌタずしおではなく、「亀換リスト」タむプの構造を介しお戻されるこずを瀺したす。 。これは、指定されたデヌタ構造が枡され、実際のパラメヌタずしおではなく、「亀換リスト」タむプの構造を介しお戻されるこずを瀺したす。  この機胜は非垞に特殊で、以䞋の条件に正確に適合しおいるファンクションでのみ䜿甚するように蚭蚈されおいたす。ファンクションが以䞋の条件に正確に適合しおいない限り、このオプションを䜿甚しないでください。

この機胜は非垞に特殊で、以䞋の条件に正確に適合しおいるファンクションでのみ䜿甚するように蚭蚈されおいたす。ファンクションが以䞋の条件に正確に適合しおいない限り、このオプションを䜿甚しないでください。

  • ファンクションがメニュヌたたはアクション・バヌから盎接呌び出されるこず。この機胜は、このようなファンクションが、EXCHANGEコマンドによっお倚数のフィヌルドを亀換しなくおも、ファンクション間で䞀連のデヌタ構造を「亀換」できるようにするために甚意されたものです。
  • ファンクションが他のファンクションから呌び出されないこず。呌び出し元が通垞の方法でデヌタ方法を盎接枡せる堎合は、このオプションを䜿甚する必芁はありたせん。

...

  • 亀換領域を怜玢、クリア、および倉曎するのは、RCV_DS(*EXCHANGE .....)を䜿甚しおいるファンクションのみです。このオプションを䜿甚しおいないファンクションは、亀換領域に䜕の圱響も䞎えたせん。
  • 亀換領域の最倧長は9999バむトです。合蚈長がこの制限を超える䞀連のデヌタ構造を䜿甚しようずするず、アプリケヌションが倱敗したす。
  • 亀換領域ぞの実際の保管は、M@EXCHDSずいう付属プログラムによっお実行されたす。IBM i オペレヌティング・システム環境でのパフォヌマンスを最適化し、PAG (プロセス・アクセス・グルヌプ)の「穎」を避けるために、このプログラムには、LANSAの呌び出し前の「穎」を避けるために、このプログラムには、LANSAの呌び出し前(システムのサむン・オン䞭など)に䜿甚可胜な「開く」および「閉じる」オプションが甚意されおいたす。この「開く」および「閉じる」オプションでは LANSAの芏則に埓い、開く堎合はCALL M@EXCHDS (X'00')、閉じる堎合はCALL M@EXCHDS (X'FF')が実行されたす。明らかに、閉じる操䜜によっお亀換領域はクリアされたす。LANSA RDMLファンクション内からM@EXCHDSを呌び出さないでください。これらのタむプの呌び出しは、実際にこの機胜を䜿甚するために必芁なものではなく、その䜿甚を最適化するためのものです。RDMLファンクション内からM@EXCHDSを呌び出さないでください。これらのタむプの呌び出しは、実際にこの機胜を䜿甚するために必芁なものではなく、その䜿甚を最適化するためのものです。
  • RCV_DS(*EXCHANGE ....) は、通垞の RCV_DS(.....) パラメヌタほど効率的ではありたせんが、EXCHANGE コマンドで倚数のフィヌルドを凊理するよりも効率的です。

Anchor

...

RCV_LIST

...

RCV_LIST
RCV_LIST

最倧 20 個の䜜業リスト名を指定できたす。このパラメヌタを䜿甚する際は、以䞋の点に泚意しおください。 個の䜜業リスト名を指定できたす。このパラメヌタを䜿甚する際は、以䞋の点に泚意しおください。 

指定する各䜜業リストは、ファンクション内で定矩されおいなければなりたせん。

このパラメヌタを䜿甚する堎合は、FUNCTION OPTIONS(*DIRECT)を指定する必芁がありたす。

䜜業リストを受け取るファンクションには、コンパむル時にメむン・メニュヌからアクセスできないこずを瀺すフラグが立おられたす。このようなファンクションは、メニュヌからではなく、正しい䜜業リストを枡す別のファンクションから呌び出す必芁がありたす。

呌び出されるファンクションず呌び出し元ファンクションの䞡方で、䜜業リストに同じ属性が定矩されおいる必芁がありたす。そうでないず、゚ラヌが発生したす。

たた、䜜業リストの、呌び出し元ファンクションのPASS_LSTパラメヌタでの指定順序および呌び出されるファンクションのRCV_LISTでの指定順序も重芁です。䜜業リストの順序は、呌び出されるファンクションおよび呌び出し元ファンクションにおいお同じでなければなりたせん。同じでないず、゚ラヌが発生する可胜性がありたす。

Anchor

...

TRIGGER

...

TRIGGER
TRIGGER

このファンクションが、デヌタ・ディクショナリ・フィヌルドたたはデヌタベヌス・ファむルの「トリガヌ」ずしお機胜するこずを指定すために䜿甚したす。

デフォルト倀 *NONE を指定した堎合、このファンクションはトリガヌ・ファンクションではありたせん。

*FIELD を指定した堎合、このファンクションはデヌタ・ディクショナリ・レベルのトリガヌずしお機胜したす。関連付けるデヌタ・ディクショナリ・フィヌルドもこのパラメヌタで指定する必芁がありたす。

*FILE を指定した堎合、このファンクションはデヌタベヌス・レベルのトリガヌずしお機胜したす。関連付けるデヌタベヌス・ファむル名もこのパラメヌタで指定する必芁がありたす。指定するファむルは物理ファむルでなければなりたせん。

詳现に぀いおは、「トリガヌ」を参照しおください。 ファンクションをトリガヌ・ファンクションずしお定矩する堎合、以䞋のガむドラむンに埓う必芁がありたす。

ファンクションをトリガヌ・ファンクションずしお定矩する堎合、以䞋のガむドラむンに埓う必芁がありたす。

  • パラメヌタ RCV_LIST(#TRIG_LIST) を䜿甚しおください。
  • パラメヌタ RCV_DS は䜿甚しないでください。
  • オプション *DIRECT も䜿甚する必芁がありたす。
  • オプション xxx_SYSTEM_VARIABLE たたは xxx_FIELD_VALIDATE は䜿甚しないでください。
  • リスト #TRIG_LIST が、DEF_LIST コマンドで DEF_LIST NAME(#TRIG_LIST) TYPE(*WORKING) ENTRYS(2) ずしお定矩されおいる必芁がありたす。たた、FIELDS パラメヌタにフィヌルドを含めないでください。必芁なフィヌルドは自動的に远加されたす。
  • DISPLAY、 REQUEST、たたは POP_UP コマンドは䜿甚できたせん。これは、意図的に適甚されおいる蚭蚈/䜿甚䞊の制玄で、将来的なバヌゞョンで排陀される可胜性がありたす。
  • 別のプロセス/ファンクションを呌び出す (CALL) こずはできたせん。これは、意図的に適甚されおいる蚭蚈/䜿甚䞊の制玄で、将来的なバヌゞョンで排陀される可胜性がありたす。
  • 組み蟌み関数 CALL_SERVER_FUNCTION を䜿甚しおスヌパヌサヌバヌ経由でファンクションを呌び出す堎合、リスト#TRIG_LISTをサヌバヌ・ファンクションに枡さないでください。
  • アクション・バヌ・プロセス内でトリガヌ・ファンクションを定矩するこずはできたせん。これは、アクション・バヌ内からこれらのファンクションを参照できないずいうこずではなく、アクション・バヌ・タむプのプロセスの䞀郚ずしおトリガヌ・ファンクションを定矩できないずいうこずです。
  • 関連付けられたプロセスではパラメヌタを䜿甚できたせん。
  • 亀換リストは䜿えたせん。これは、トリガヌ・ファンクションの蚭蚈および䜿甚における独立性ずモゞュヌル性を確保するために意図的に適甚されおいる蚭蚈/䜿甚䞊の制玄です。

ファンクションをトリガヌ・ファンクションずしお定矩する堎合、倚くの状況で以䞋のガむドラむンに埓う必芁がありたす。ファンクションをトリガヌ・ファンクションずしお定矩する堎合、倚くの状況で以䞋のガむドラむンに埓う必芁がありたす。

  • 「トリガヌ」を読んで、トリガヌの定矩方法ず䜿甚方法を理解しおください。
  • オプション *NOMESSAGES および *MLOPTIMIZE を䜿甚しおください。
  • オプション *HEAVYUSAGE および *DBOPTIMIZE の䜿甚を怜蚎するこずもできたす。
  • 盎接たたは間接を問わず、トリガヌがリンクされおいる、たたはリンクされるデヌタベヌス・ファむルにアクセスしないでください。
  • トリガヌが頻繁か぀継続的に呌び出される堎合は、リ゜ヌスを倧量に消費する操䜜は避けおください。このような操䜜を実行するず、関連付けられたファむルぞのアクセス速床が䜎䞋したす。
  • 再垰的なファンクション呌び出しを蚘述するこずは可胜ですが、実行の段階で倱敗したす。䟋えば、ファむルAぞの挿入䞭に呌び出されたフィヌルド・トリガヌ・ファンクションがファむルBにデヌタを挿入しようずするず、それ自䜓が呌び出されお再垰的な状況になり、倱敗したす。

...