Tablo_ve_Rowset_İşlemleri
Tablo ve Rowset İşlemleri
GetTableObject
- Dönüş Tipi: COM Object (Table)
- Parametreler:
- - tableName (String): Tablo adı
- Açıklama: Tablo nesnesini döndürür
Örnek Kullanım:
Sub Makro1()
Dim Tbl, RS
' Tablo nesnesi
Set Tbl = Doc.GetTableObject("STOK40T")
' Rowset nesnesi (aynı işlev)
Set RS = Doc.GetRowSetObject("STOK40T")
If Not RS Is Nothing Then
RS.MoveFirst
Do While Not RS.EOF
Doc.MsgBox "Stok: " & RS("KOD")
RS.MoveNext
Loop
Set RS = Nothing
End If
End Sub
Örnek Kullanım:
Sub Makro1()
Dim Tbl
Set Tbl = Doc.GetTableObject("STOK40T")
If Not Tbl Is Nothing Then
' Tablo işlemleri
Tbl.AddNew
Tbl("KOD") = "STOK001"
Tbl("MIKTAR") = 100
Tbl.Update
Set Tbl = Nothing
End If
End Sub
GetRowSetObject
- Dönüş Tipi: COM Object (Rowset)
- Parametreler:
- - tableName (String): Tablo adı
- Açıklama: Rowset nesnesini döndürür
Örnek Kullanım:
Sub Makro1()
Dim RS
Set RS = Doc.GetRowSetObject("STOK40T")
If Not RS Is Nothing Then
Dim Toplam
Toplam = 0
RS.MoveFirst
Do While Not RS.EOF
Toplam = Toplam + CDbl(RS("MIKTAR"))
RS.MoveNext
Loop
Doc.MsgBox "Toplam Miktar: " & Toplam
Set RS = Nothing
End If
End Sub
DeleteTableObject
- Dönüş Tipi: Void
- Parametreler:
- - tableName (Variant): Tablo adı veya tablo nesnesi
- Açıklama: Tablo nesnesini siler
Örnek Kullanım:
Sub Makro1()
Dim Tbl
Set Tbl = Doc.GetTableObject("STOK40T")
' Tablo işlemleri...
Doc.DeleteTableObject Tbl
Set Tbl = Nothing
End Sub
DeleteRowsetObject
- Dönüş Tipi: Void
- Parametreler:
- - tableName (Variant): Tablo adı veya rowset nesnesi
- Açıklama: Rowset nesnesini siler
Örnek Kullanım:
Sub Makro1()
Dim RS
Set RS = Doc.GetRowSetObject("STOK40T")
' Rowset işlemleri...
Doc.DeleteRowsetObject RS
Set RS = Nothing
End Sub
CreateTableObject
- Dönüş Tipi: COM Object (Table)
- Parametreler:
- - tableName (String): Tablo adı
- - tableType (String): Tablo tipi
- Açıklama: Yeni tablo nesnesi oluşturur
Örnek Kullanım:
Sub Makro1()
Dim Tbl
Set Tbl = Doc.CreateTableObject("MAKROTABLE=STACK", "IO")
If Not Tbl Is Nothing Then
Tbl.AddField2 "KOD", "CHAR", 20, 0, "L", "", ""
Tbl.AddField2 "MIKTAR", "NUMERIC", 15, 2, "L", "", ""
Tbl.AddNew
Tbl("KOD") = "STOK001"
Tbl("MIKTAR") = 100
Tbl.Update
Doc.MsgBox "Yeni kayıt eklendi"
Set Tbl = Nothing
End If
End Sub
CreateRowsetObject
- Dönüş Tipi: COM Object (Rowset)
- Parametreler:
- - tableName (String): Tablo adı
- - tableType (String): Tablo tipi
- Açıklama: Yeni rowset nesnesi oluşturur
Örnek Kullanım:
Sub Makro1()
Dim RS
Set RS = Doc.CreateRowsetObject("KRITERGIRIS=STACK", "TEMPIO")
If Not RS Is Nothing Then
RS.AddField2 "KOD", "CHAR", 20, 0, "L", "", ""
RS.AddNew
RS("KOD") = "STOK001"
RS.Update
Set RS = Nothing
End If
End Sub
CreateTransactionalTableObject
- Dönüş Tipi: COM Object (Table)
- Parametreler:
- - tableName (String): Tablo adı
- - tableType (String): Tablo tipi
- Açıklama: Transactional tablo nesnesi oluşturur
Örnek Kullanım:
Sub Makro1()
Dim Tbl
Set Tbl = Doc.CreateTransactionalTableObject("MAKROTABLET1=STACK", "IO")
If Not Tbl Is Nothing Then
Tbl.AddField2 "KOD", "CHAR", 20, 0, "L", "", ""
Tbl.AddNew
Tbl("KOD") = "STOK001"
Tbl.Update
Set Tbl = Nothing
End If
End Sub
CreateTransactionalRowsetObject
- Dönüş Tipi: COM Object (Rowset)
- Parametreler:
- - tableName (String): Tablo adı
- - tableType (String): Tablo tipi
- Açıklama: Transactional rowset nesnesi oluşturur
Örnek Kullanım:
Sub Makro1()
Dim RS
Set RS = Doc.CreateTransactionalRowsetObject("BRW_FILTERING_TABLES=STACK", "IO")
If Not RS Is Nothing Then
RS.AddField2 "KOD", "CHAR", 20, 0, "L", "", ""
RS.AddNew
RS("KOD") = "STOK001"
RS.Update
Set RS = Nothing
End If
End Sub
CreateSObject
- Dönüş Tipi: COM Object
- Parametreler:
- - objectType (String): Nesne tipi
- Açıklama: Alt automation nesnesi oluşturur
Desteklenen Nesne Tipleri:
- "d7Date" - Tarih işlemleri
- "d7DateTime" - Tarih ve zaman işlemleri
- "Parameters" - Parametre yönetimi
- "BatchErrorMode" - Toplu hata yönetimi
- "BatchUpdateMode" - Toplu güncelleme modu
- "Query" - Sorgu oluşturma
- "JoinSet" - Tablo birleştirme
- "ReportOutput" - Rapor çıktısı
- "FieldDefinition" - Alan tanımları
- "CodeList" - Kod listesi
- "ExcelOutput" - Excel çıktısı
- "HtmlOutput" - HTML çıktısı
- "PrintEngineOutput" - Yazdırma motoru çıktısı
- "Chart" - Grafik nesnesi
- "WaitCursor" / "HourGlass" - Bekleme imleci
- "StatusBarMessage2" - Durum çubuğu mesajı
- "DocumentMode" - Belge modu
- "EDrawings" - E-Drawing nesnesi
- "Object_CleanUp" - Nesne temizleme
- Ve diğerleri...
Örnek Kullanım:
Sub Makro1()
Dim Batch
Set Batch = Doc.CreateSObject("BatchErrorMode")
For i = 1 To 10
Doc.MsgBox i & ". işlem yapılıyor"
Next
Set Batch = Nothing
Doc.MsgBox "İşlem Tamamlandı."
End Sub
Not: Her nesne tipinin kendine özgü fonksiyonları vardır. Detaylar için ilgili nesne bölümlerine bakın.
CREATE_STD_ROWSET
- Dönüş Tipi: Integer (Hata kodu)
- Parametreler:
- - tableName (String): Tablo adı
- Açıklama: Standart rowset oluşturur
Örnek Kullanım:
Sub Makro1()
Dim Result
Result = Doc.CREATE_STD_ROWSET("_SMS_SEND_INFO_TABLE_E")
If Result = 0 Then
Doc.MsgBox "Standart rowset oluşturuldu"
End If
End Sub
---