Update Data Atribut di MapXtreme

16 11 2009

Di artikel sebelumnya, ada sedikit penjelasan tentang pencarian objek. Di artikel kali ini, metode pencarian tidak berdasarkan objek di peta. Objek dicari di tabel atribut tanpa mengetahui posisi objek di peta. Untuk melakukannya digunakan class

MapInfo.Data.SearchInfoFactory.SearchWhere

Update data attribut

Pertama kita gunakan class SearchInfoFactory untuk menentukan objek yang dicari. Setelah feature dari objek yang dicari ditemukan, digunakan method UpdateFeature

contoh vb:

Private Sub UpdateNoreg(ByVal idlama As String, ByVal idbaru As String)
  Dim MIcon As New MapInfo.Data.MIConnection
  Dim si As SearchInfo
  Try
     si = MapInfo.Data.SearchInfoFactory.SearchWhere("NO_REG = '" & idlama & "'")
     MIcon.Open()

     Dim mitable As Table
     mitable = MapInfo.Engine.Session.Current.Catalog.GetTable("POSISI_STRATEGIS")
     Dim fl As FeatureLayer = New FeatureLayer(mitable)
     Dim irfc As IResultSetFeatureCollection
     irfc = MapInfo.Engine.Session.Current.Catalog.Search(mitable, si)

     If irfc.Count <> 0 Then
        Dim idfc As IDynamicFeatureCollection = CType(irfc, IDynamicFeatureCollection)
        Dim f As Feature = idfc.Item(0)
        f("NO_REG") = idbaru
        fl.Table.UpdateFeature(f, True)
     End If
  Catch ex As Exception
  Finally
     If MIcon.State = Data.ConnectionState.Open Then
        MIcon.Close()
     End If
  End Try
End Sub

SearchInfoFactory.SearchWhere(“NO_REG = ‘” & idlama & “‘”)  maksudnya mencari value idlama di kolom ‘NO_REG’ dari tabel atribut peta POSISI_STRATEGIS. Setelah objek ditemukan (If irfc.Count <> 0)  dilakukan perubahan nilai dari kolom NO_REG. (f(“NO_REG”) = idbaru)

fl.Table.UpdateFeature(f, True) untuk melakukan perubahan di objek yang terseleksi, parameter ‘True’ menunjukkan tidak semua kolom diupdate, dalam hal ini hanya kolom ‘NO_REG’ yang di update.

Jangan lupa menambahkan kode berikut di baris pertama

Imports MapInfo.Data
Imports MapInfo.Mapping

Ditulis menggunakan MapXtreme 6.8


Tindakan

Information

Tinggalkan komentar