スクリプトへのアクティブ データの組み込み

開始する前に、使用するデータを含むアクティブ データ資産、またはデータを書き込むアクティブ データ資産を作成します。

アクティブ データ資産から使用するスクリプトにデータをマップします。 さらに、アクティブ データ資産に行または列を追加して、スクリプトからアクティブ データ資産にデータを追加できます。

  1. テストする操作を記録するか、またはテストする操作についてのスクリプトを手動で作成します。 詳細については、「スクリプトの記録」を参照してください。 たとえば、Web アプリケーションで姓、名、および電話番号を記録するスクリプトは以下のようになります。
    Public Sub Main()
      With _desktop.BrowserWindow("/BrowserApplication//BrowserWindow")
        .DomTextField("@id='txtFirstName'").SetText("Pat")
        .DomTextField("@id='txtLastName'").SetText("Smith")
        .DomTextField("@id='txtPhoneNumber'").SetText("555-121-3434")
        .DomButton("@id='btnAdd'").Select()
      End With
  2. LoadActiveData コマンドを使用して、アクティブ データ資産名を指定します。 必要に応じて、アクティブ データ ファイル内の開始行と終了行、使用するランダム行数、およびデータが読み取り専用であるかどうかを指定できます。
    Workbench.LoadActiveData("activeDataName", [start row,
       end row, randomcount, readonly])
  3. 記録したテキストをアクティブ データ資産のテキストで置き換えるには、アクティブ データ ファイル内の対応する各行名に対して宣言を作成し、宣言をスクリプト内の適切なコードにマップします。 たとえば、PhoneBookData アクティブ データ資産で利用可能なすべてのデータを使用するようにステップ 1 のスクリプトを変更するには、スクリプトを以下のように変更します。
    Public Sub Main()
      AddAllToPhoneBook()			'Reads all records in order
    End Sub
    
    Public Sub AddAllToPhoneBook()
      Dim data As ActiveData = Workbench.LoadActiveData( "PhoneBookData" )
      Dim row As ActiveDataRow
    		
      With _desktop.BrowserWindow("/BrowserApplication//BrowserWindow")
    			
        For Each row In data
    				
        Dim FirstName As String = row.GetString("fname")
        Dim LastName As String = row.GetString("lname")
        Dim PhoneNumber As String = row.GetString("phonenumber")
    
        .DomTextField("@id='txtFirstName'").SetText(FirstName)
        .DomTextField("@id='txtLastName'").SetText(LastName)
        .DomTextField("@id='txtPhoneNumber'").SetText(PhoneNumber)
    
        .DomButton("@id='btnAdd'").Select()
        Next
      End With
    End Sub
    スクリプトを再生すると、アクティブ データ資産のすべての宣言されているデータがスクリプトに組み込まれます。
  4. 既存のアクティブ データ資産に列を追加するには、アクティブ データ資産を宣言して、アクティブ データ資産名と列名を指定します。 たとえば、PhoneBookData 資産に「Occupation」という新しい列を追加するには、以下のように入力します。
    Public Sub Main()
    
      AddColumnToDataFile( "occupation" )
    End Sub
    
    Public Sub AddColumnToDataFile( name As String )
      Dim data As ActiveData = Workbench.LoadActiveData( "PhoneBookData" )
      data.AddColumn( "Occupation", name )
      data.Save()
    End Sub
    End Module
    スクリプトを再生すると、アクティブ データ資産によって指定されたファイルに新しい列が追加されます。
  5. 既存のアクティブ データ資産に行を追加するには、アクティブ データ資産を宣言して、アクティブ データ資産名と行名を指定します。 たとえば、特定の ID 番号の新しいデータ行を追加するには、以下のように入力します。
    Public Sub Main()
    
      InsertNewNumberToDataFileWithOccupation( 108, "Jay", "Jones", "5551219", _ 
        "QA Analyst" )
    
    End Sub
    
    Public Sub InsertNewNumberToDataFileWithOccupation( id As Integer, _ 
        firstName As String, lastName As String, phoneNumber As String, _ 
        occupation As String )
      Dim data As ActiveData = Workbench.LoadActiveData( "PhoneBookData" )
      Dim row As ActiveDataRow = data.AddRow()
    		
      row.SetLong( "id", id )
      row.SetString( "fname", firstName )
      row.SetString( "lname", lastName )
      row.SetString( "number", phoneNumber )
      row.SetString( "occupation", occupation )
    		
      data.Save()
    		
    End Sub
    End Module
    スクリプトを再生すると、アクティブ データ資産によって指定されたファイルに新しい行が追加されます。
  6. 特定のセルに変数の値を追加するには、スクリプトに次のコード サンプルを追加します。
    Dim row As ActiveDataRow = data.Item(1)
    row.SetString("Columnname" , Variable)