Versions Compared

Key

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

...

DEFINE_COMコマンドを使用します。クラスにコンストラクタがないか、コンストラクタがあってもパラメータがない場合、インスタンスを動的または静的のいずれかとして定義できます。そうでない場合、インスタンスは動的として設定しなければなりません。

     Define_

...

Com Class(#DOTNET1.TestClasses.MyClass)

...

 Name(#MyClass)

...

 Reference(*DYNAMIC)

クラスがコントロールの場合、コントロールをフォームにペアレント化し、フォームに表示されるようにします。その後、[デザイン] ビューでコントロールのサイズを変更して移動できます。

     Define_

...

Com Class(#DOTNET1.DotNetControls.WebBrowserX)

...

 Name(#Browser)

...

 Displayposition(4)

...

 Parent(#COM_OWNER)

...

 Tabposition(4)

動的インスタンスのインスタンス化

コンポーネントのインスタンスを動的として定義した場合、*NewまたはSET_REFコマンドを使用して、インスタンスをインスタンス化する必要があります。いずれのコマンドでも、開発者がコンストラクタを指定できます。

...

クラスにコンストラクタがないか、コンストラクタがあってもパラメータがない場合、コンストラクタを指定しないか、パラメータのないコンストラクタを指定できます。それ以外の場合、パラメータはメソッド呼び出しと同じように渡す必要があります。

Panel
bgColor#ffffcc
Variable <

Variable <=

 

*

New 

New ---

 Fully qualified class name 

Fully qualified class name ------------------

 >

>
>---------------------------------------------------------------------

 >

>

  |                                                             |

  -- .Constructor Name                         -- ( 

   |                                                                                                 |
    --.Constructor Name -------------------------------------------

                        |                                      |

                                       |                                                          |
                                       -- ( --------------------------------

 

)

 

-–

                              |                         |

                               

                                               |                                         |
                                                -------- Parameter -

 Parameter                                   

-------

                                 |                   |

                                                    |                                |
                                                     ----------<----------  

SET_REF

詳細については、『LANSAテクニカル リファレンスガイド』の「SET_REF」を参照してください。

C#

...

        public ConstructorTests() {…}

...

        public ConstructorTests( int aNumber ) {…}

...

        public ConstructorTests( int aNumber, ref DateTime aDateTime, String aString ) {…}

RDML

...

        Define_Com Class(#DOTNET1.TestClasses.ConstructorTests) Name(#LCom01) Reference(*DYNAMIC)

...


   Define Field(#LNum01) Type(*INT) Length(4)

...

        Define Field(#LStr01) Type(*CHAR) Length(50)

...

        Define Field(#LDTime01) Type(*DATETIME) Length(26)

      #LCom01 <= *New #DOTNET1.TestClasses.ConstructorTests

...

        Set_Ref Com(#LCom01) To(*CREATE_AS #DOTNET1.TestClasses.ConstructorTests)

...


     #LCom01 <= *New #DOTNET1.TestClasses.ConstructorTests.ConstructorTests()

...

        Set_Ref Com(#LCom01) To(*CREATE_AS #DOTNET1.TestClasses.ConstructorTests.ConstructorTests)

...


     #LCom01 <= *New #DOTNET1.TestClasses.ConstructorTests.ConstructorTests#2( #LNum01 #LDTime01 #LStr01 )

...

        Set_Ref Com(#LCom01) To(*CREATE_AS #DOTNET1. TestClasses.ConstructorTests.ConstructorTests#2) Anumber(#LNum0501) Adatetime(#LDTi0501) Astring(#LStr0501)

プロパティと変数の使い方

構文

Panel
bgColor#ffffcc
RDML Variable 

RDML Variable . .

NET Property Name

NET Property Name -----------------------------------------------

 >

                                    |                                           |

                                     -- [ 

>
                                                             |                                                               |
                                                             -- \[ ---------------------------------

 

\]

                                           

-–

                                           |                             |

                                                                      |                                           |
                                                                       -----------

 Index                                               

Index -----------

                                              |                       |

                                                                           |                                  |
                                                                            -----------<-----------

RDML Variable 

RDML Variable . .

NET Variable Name

NET Variable Name  

C#

public int Counter

{

  get { return mCount; }

  set { mCount = value; }

}

RDML

        public int Counter    
{
      get { return mCount; }
      set { mCount = value; }
  }

RDML

        Define_Com 

...

Class(#DOTNET1.TestClasses.MyClass) Name(#NumericClass)

...


     #NumericClass.Counter := 120

...


     #STD_INT := #NumericClass.Counter

...


     Begin_Loop Using(#STD_INT) To(#NumericClass.Counter) Step(2)

...

        …
   End_Loop

メソッドの呼び出し

構文

Panel
bgColor#ffffcc
RDML Variable 

RDML Variable .

Method Name 

Method Name -----------------------------------------------

 >

                             |                                           |

                              -- ( 

>
                                                   |                                                              |
                                                    -- ( ---------------------------------

 

)

                                      

-–

                                    |                             |

                                                           |                                           |
                                                           --------

 Parameter                                         

Parameter ----------

                                       |                       |

                                                              |                                    |
                                                                -----------<-----------

C#

...

        public void

...

        IncrementDateByDays(

...

           ref DateTime                           dateTime,

...

           int                                    dayAdjustment )

{

...

        {
      dateTime = dateTime.AddDays( dayAdjustment );
  }

RDML

...

        Define_Com Class(#DOTNET1.TestClasses.MyClass) Name(#LClass01)

...

        Define Field(#LDat01) Type(*DATETIME)

...

        Define Field(#LDat02) Type(*DATETIME)

...


      #LDat01 := '1954-04-25 10:04:00.000000'

...

        #LDat02 := '1954-05-05 10:04:00.000000'

...


     #LClass01.IncrementDateByDays( #LDat01 10 )

...


     If ((#LDat01 = #LDat02))

...

        Endif


C#

public String 

   DoubleIntegerReturnString(

      int                                    number,

      out int                                result )

{

   result = number * 2;

...

        public String
      DoubleIntegerReturnString(
         int                                    number,
         out int                                result )
  {
      result = number * 2;
      return String.Format( "Double {0} is {1}", number, result );
  }

RDML

...

        Define_Com Class(#DOTNET1.TestClasses.MyClass) Name(#LClass01)

...

        Define Field(#LNum01) Type(*INT) Length(4)

...

        Define Field(#LNum02) Type(*INT) Length(4)

...

        Define Field(#LStr01) Type(*CHAR) Length(80)

...


     #LNum01 := 411

...

        #LStr01 := #LClass4101.DoubleIntegerReturnString( #LNum01 #LNum02 )

...

        If (#LNum02 = (#LNum01 * 2))

...

        …
   Endif

イベント処理

イベント処理関数は、EVTROUTINEコマンドを使用して定義します。このコマンドの詳細については、LANSA テクニカル リファレンスガイドの「EVTROUTINE」を参照してください。コマンドの基本的な構文は以下のようになります。

Panel
bgColor#ffffcc
EVTROUTINE 

EVTROUTINE ---

 HANDLING 

HANDLING (

 Variable Name 

Variable Name .

Event Name 

Event Name )------------

 >

>
>-----------------------------------------------------------------

 >

                 |                                              |

                  

----------- >
                               |                                                                             |
                                 ----

 Parameter Name

Parameter Name(

 Variable Name 

Variable Name )

 

----

 

)

 

-–

                   |                                     |

                    

                                    |                                                            |
                                      ---------------------<-----------------

C#

public class EventArgs1

{

   private String         mName;

   public EventArgs1() {   }

   public String Name

   {

      get { return mName; }

      set { mName = value; }

   }

}

Public class EventTests

{

   public event MyEventDelegate MyEvent;

   public delegate void MyEventDelegate( String str, EventArgs1 eventArgs );

}

RDML

        public class EventArgs1    
{
      private String         mName;

        public EventArgs1() {   }

        public String Name

      {
         get { return mName; }
         set \{ mName = value; }
     }
  }

     Public class EventTests
  {
      public event MyEventDelegate MyEvent;
      public delegate void MyEventDelegate( String str, EventArgs1 eventArgs );
  }

RDML

      Define_Com Class

...

(#DOTNET1.TestClasses.EventTests)

...

 Name(#EventTest)

...


     Evtroutine Handling(#EventTest.MyEvent) Str(#s1) EventArgs(#c1)

...

         #STD_TEXT := #s1

...

         #STD_NAME := #c1.Name

...

      Endroutine