TRecordList
Razred TRecordList vsebuje informacije o listah zapisov v podatkovni plasti.
Dim RL, RL1 As TRecordList
Dim I as Long
RL = [Neka plast].FilteredRecords
RL1 =[Neka plast].CreateRecordList ('Lista')
Hint (RL1.Layer.Name)
For I = RL.Count - 1 To 0 Step -1
If RL.Items (I).TopologyType = ttPoint Then
RL1.Add (RL.Items (I))
RL.Delete (I)
EndIf
Next
RL1.Add (RL.SelectRecord ('Lista je prazna', 'Izberi zapis',
'Preveč zapisov', [SomeField], Nil))
If RL1.InList (RL.Items (0)) Then Beep EndIf
RL1.Clear
[Neka plast].Form.EditRecord (RL1)
RL1.Merge
RL1.DestroyVsebina
Osnovne operacije
Dim L As TLayer, I as Long
L = [Neka plast]
For I = 0 To L.FilteredRecords.Count - 1
If L.FilteredRecords.Items(I).TopologyType = ttPoint Then
...
EndIf
NextCount
Lastnost Count določa število zapisov v listi.
| RO Property TRecordList.Count As Long | ||
| Result | Long | Število zapisov. |
Items
Lastnost Items določa TRecord objekt (zapis), na podlagi indexa zapisa.
| RO Property TRecordList.Items (Index As Long) As TRecord | ||
| Index | Long | Index zapisa. Prvi ima vrednost 0. |
| Result | TRecord | TRecord objekt. |
InList
Lastnost InList preveri ali je zapis v listi.
| RO Property TRecordList.InList (R As TRecord) As Boolean | ||
| R | TRecord | TRecord objekt, ki se preverja. |
| Result | Boolean | True, če je zapis v listi, drugače False. |
Add
Metoda Add doda zapis v listo zapisov.
| Method TRecordList.Add (Rec As TRecord) | ||
| Rec | TRecord | TRecord objekt, ki se bo dodal. |
Delete
Metoda Delete briše zapis iz liste.
| Method TRecordList.Delete (Index As Long) | ||
| Index | Long | Index zapisa, ki se bo brisal. Prvi ima vrednost 0. |
Clear
Metoda Clear zbriše vse zapise v listi.
| Method TRecordList.Clear |
Layer
Lastnost Layer poda podatkovno plast, kateri pripada objekt.
| RO Property TRecordList.Layer As TLayer | ||
| Result | TLayer | Referenca na plast. |
SelectRecord
Lastnost SelectRecord odpre dialog, za izbor enega zapisa iz liste zapisov.
| RO Property TRecordList.SelectRecord (NoneMessage, Caption, ToManyMessage As String, Fld1, Fld2 As TField) As TRecord | ||
| NoneMessage | String | Sporočilo, če v listi ni zapisov. |
| Caption | String | Opis glave dialoga. |
| ToManyMessage | String | Sporočilo, če je v listi več kot 50000 zapisov. |
| Fld1 | TField | TField objekt (atribut), katerega vrednost se bo zapisala prva. |
| Fld2 | TField | TField objekt (atribut), katerega vrednost se bo zapisala zadnja. Lahko je tudi neopredeljen (Nil), če se ne potrebuje. |
| Result | TRecord | TRecord objekt (zapis), ki je bil izbran. Če je uporabnik pritisnil Escape tipko ali Cancel, ali če je bila lista zapisov prazna, ali pa če je bilo preveč zapisov v listi je rezultat False. |
ZoomTo
Metoda ZoomTo .
| Method TRecordList.ZoomTo (Factor As Float) | ||
| Factor | Float | . |
GetBounds
Metoda GetBounds .
| Method TRecordList.GetBounds (ByRef Y1, ByRef X1, ByRef Y2, ByRef X2 As Float) As Boolean | ||
| Y1 | ByRef Float | . |
| X1 | ByRef Float | . |
| Y2 | ByRef Float | . |
| X2 | ByRef Float | . |
| Result | Optional Boolean | . |
GetPoints
Lastnost GetPoints .
| RO Property TRecordList.GetPoints As TPointArray | ||
| Result | TPointArray | . |
Združevanje podatkov
AsLines
Lastnost AsLines .
| RO Property TRecordList.AsLines (Format As String, F1, F2, F3 As TField) As String | ||
| Format | String | . |
| F1 | TField | . |
| F2 | TField | . |
| F3 | TField | . |
| Result | String | . |
GroupBy
Lastnost GroupBy .
| RO Property TRecordList.GroupBy (F1, F2, F3 As TField) As TStringList | ||
| F1 | TField | . |
| F2 | TField | . |
| F3 | TField | . |
| Result | TStringList | . |
GroupByFormula
Lastnost GroupByFormula .
| RO Property TRecordList.GroupByFormula (F1, F2, F3 As String) As TStringList | ||
| F1 | String | . |
| F2 | String | . |
| F3 | String | . |
| Result | TStringList | . |
GroupByLists
Lastnost GroupByLists .
| RO Property TRecordList.GroupByLists (F1, F2, F3 As TField) As TStringList | ||
| F1 | TField | . |
| F2 | TField | . |
| F3 | TField | . |
| Result | TStringList | . |
GroupByListsFormula
Lastnost GroupByListsFormula .
| RO Property TRecordList.GroupByListsFormula (F1, F2, F3 As String) As TStringList | ||
| F1 | String | . |
| F2 | String | . |
| F3 | String | . |
| Result | TStringList | . |
Operacije nad listami
Te operacije se lahko izvajajo nad vsemi listami zapisov razen nad listo vseh zapisov (TLayer.AllRecord).
L.FilteredRecords.ListOperation_ABB_A (L.GetField('Polje1'), L.GetField('Polje2'), Nil)ListOperation_ABB_A
Metoda ListOperation_ABB_A nam iz liste odstrani podvojene zapise.
| Method TRecordList.ListOperation_ABB_A (F1, F2, F3 As TField) | ||
| F1 | TField | Prvo polje za primerjanje zapisov. |
| F2 | TField | Drugo polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL. |
| F3 | TField | Tretje polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL. |
ListOperation_ABB_AB
Metoda ListOperation_ABB_AB nam v listi ohrani unikatne zapise.
| Method TRecordList.ListOperation_ABB_AB (F1, F2, F3 As TField) | ||
| F1 | TField | Prvo polje za primerjanje zapisov. |
| F2 | TField | Drugo polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL. |
| F3 | TField | Tretje polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL. |
ListOperation_ABB_B
Metoda ListOperation_ABB_B nam v listi ohrani podvojene zapise.
| Method TRecordList.ListOperation_ABB_B (F1, F2, F3 As TField) | ||
| F1 | TField | Prvo polje za primerjanje zapisov. |
| F2 | TField | Drugo polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL. |
| F3 | TField | .Tretje polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL. |
ListOperation_ABB_BB
Metoda ListOperation_ABB_BB nam iz liste odstrani unikatne zapise.
| Method TRecordList.ListOperation_ABB_BB (F1, F2, F3 As TField) | ||
| F1 | TField | Prvo polje za primerjanje zapisov. |
| F2 | TField | Drugo polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL. |
| F3 | TField | Tretje polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL. |
Združevanje list
To so operacije med listami zapisov. Uporabljajo se za združevanje oziroma odštevanje list.
L = [Neka plast]
L.FilteredRecords.AndList (L.ClickedRecords) // Naredi presek list
L.FilteredRecords.OrList (L.EditedRecords) // Doda filtriranim zapisom zapise iybrane v urejevalniku geometrije.
L.FilteredRecords.XOrList (L.Allrecords) // Napolni filtrirane zapise z vsemi ostalimi.AndList
Metoda AndList izvaja in operacijo med dvema listama zapisov, in sicer briše vse zapise, kateri NISO v obeh listah.
| Method TRecordList.AndList (List As TRecordList) | ||
| List | TRecordList | Lista s katero se primerja. |
OrList
Metoda OrList izvaja ali operacijo med dvema listama zapisov, in sicer doda vse zapise, ki so v katerikoli listi.
| Method TRecordList.OrList (List As TRecordList) | ||
| List | TRecordList | Lista s katero se primerja. |
XOrList
Metoda XOrList izvaja ekskluzivni OR operacijo med dvema listama zapisov, in sicer doda vse zapise, ki so samo v eni od obeh list.
| Method TRecordList.XOrList (List As TRecordList) | ||
| List | TRecordList | Lista s katero se primerja. |
CopyList
Metoda CopyList .
| Method TRecordList.CopyList (List As TRecordList) | ||
| List | TRecordList | . |
RemoveList
Metoda RemoveList .
| Method TRecordList.RemoveList (List As TRecordList) | ||
| List | TRecordList | . |
Spreminjanje podatkov
ReplaceForm
Metoda ReplaceForm .
| Method TRecordList.ReplaceForm As Long | ||
| Result | Optional Long | . |
ExecuteReplace
Metoda ExecuteReplace Izvede spremembo polja v vseh zapisih določene liste.
| Method TRecordList.ExecuteReplace (F As TField, Formula As String) As Long | ||
| F | TField | Polje, ki se spreminja. |
| Formula | String | Basic izraz, ki vrne novo vrednost polja. |
| Result | Optional Long | Število dejansko spremenjenih zapisov. |
Če je v listi več kot 500 zapisov, se po spremembi izvede optimizacija podatkovne plasti.
Dim L As TLayer
L = [Plast]
L.Allrecords.ExecuteReplace (L.GetField ('Polje1'), 'Result = Result + 1') // Poveča polje za 1
L.Filteredrecords.ExecuteReplace (L.GetField ('Polje2'), 'Result = [Polje1]') // Nastavi polje2 na vrednost polja1ExecuteReplacNoOptimize
Metoda ExecuteReplacNoOptimize .
| Method TRecordList.ExecuteReplacNoOptimize (F As TField, Formula As String) As Long | ||
| F | TField | . |
| Formula | String | . |
| Result | Optional Long | . |
DeleteListData
Metoda DeleteListData .
| Method TRecordList.DeleteListData (Confirm As Boolean) As Boolean | ||
| Confirm | Boolean | . |
| Result | Optional Boolean | . |
Merge
Metoda Merge združuje entitete v listi. Polilinije se združujejo v polilinije, poligoni pa v večje poligone, če je to možno.
| Method TRecordList.Merge |
Outline
Metoda Outline .
| Method TRecordList.Outline (Distance, Error As Float) | ||
| Distance | Float | . |
| Error | Float | . |
OutlineFld
Metoda OutlineFld .
| Method TRecordList.OutlineFld (DistanceFld As TField, Error As Float) | ||
| DistanceFld | TField | . |
| Error | Float | . |
Razno
CacheTiles
Metoda CacheTiles .
| Method TRecordList.CacheTiles (S As String, FL, TL As Long) | ||
| S | String | . |
| FL | Long | . |
| TL | Long | . |
FillToHTML
Metoda FillToHTML .
| Method TRecordList.FillToHTML (TemplateFile, OutputFile As String, Offset As Float) | ||
| TemplateFile | String | . |
| OutputFile | String | . |
| Offset | Float | . |
GenerateDocument
Metoda GenerateDocument .
| Method TRecordList.GenerateDocument (TemplateFile, OutputFile, LayerTag As String, Word2003 As Boolean) | ||
| TemplateFile | String | . |
| OutputFile | String | . |
| LayerTag | String | . |
| Word2003 | Boolean | . |
GPSPot
Metoda GPSPot .
| Method TRecordList.GPSPot (ByRef PA, ByRef PB As TPointArray, StopDistance, StopTime, GenError As Float) | ||
| PA | ByRef TPointArray | . |
| PB | ByRef TPointArray | . |
| StopDistance | Float | . |
| StopTime | Float | . |
| GenError | Float | . |
Destroy
Metoda Destroy uniči listo zapisov.
| Method TRecordList.Destroy |
Web
GetBoundingWindow
Lastnost GetBoundingWindow .
| RO Property TRecordList.GetBoundingWindow (Offset As Float) As String | ||
| Offset | Float | . |
| Result | String | . |