TRecordList

Iz SDMS
Redakcija dne 13:16, 5. februar 2014 od Aleš Trtnik (pogovor | prispevki)
(prim) ← Starejša redakcija | poglejte trenutno redakcijo (prim) | Novejša redakcija → (prim)
Jump to navigationJump to search
Ta stran je trenutno še v izdelavi.

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.Destroy

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
Next

Count

Lastnost Count določa število zapisov v listi.

RO Property TRecordList.Count As Long
ResultLongŠtevilo zapisov.

Items

Lastnost Items določa TRecord objekt (zapis), na podlagi indexa zapisa.

RO Property TRecordList.Items (Index As Long) As TRecord
IndexLongIndex zapisa. Prvi ima vrednost 0.
ResultTRecordTRecord objekt.

InList

Lastnost InList preveri ali je zapis v listi.

RO Property TRecordList.InList (R As TRecord) As Boolean
RTRecordTRecord objekt, ki se preverja.
ResultBooleanTrue, če je zapis v listi, drugače False.

Add

Metoda Add doda zapis v listo zapisov.

Method TRecordList.Add (Rec As TRecord)
RecTRecordTRecord objekt, ki se bo dodal.

Delete

Metoda Delete briše zapis iz liste.

Method TRecordList.Delete (Index As Long)
IndexLongIndex 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
ResultTLayerReferenca 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
NoneMessageStringSporočilo, če v listi ni zapisov.
CaptionStringOpis glave dialoga.
ToManyMessageStringSporočilo, če je v listi več kot 50000 zapisov.
Fld1TFieldTField objekt (atribut), katerega vrednost se bo zapisala prva.
Fld2TFieldTField objekt (atribut), katerega vrednost se bo zapisala zadnja. Lahko je tudi neopredeljen (Nil), če se ne potrebuje.
ResultTRecordTRecord 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)
FactorFloat.

GetBounds

Metoda GetBounds .

Method TRecordList.GetBounds (ByRef Y1, ByRef X1, ByRef Y2, ByRef X2 As Float) As Boolean
Y1ByRef Float.
X1ByRef Float.
Y2ByRef Float.
X2ByRef Float.
ResultOptional Boolean.

GetPoints

Lastnost GetPoints .

RO Property TRecordList.GetPoints As TPointArray
ResultTPointArray.

Združevanje podatkov

AsLines

Lastnost AsLines .

RO Property TRecordList.AsLines (Format As String, F1, F2, F3 As TField) As String
FormatString.
F1TField.
F2TField.
F3TField.
ResultString.

GroupBy

Lastnost GroupBy .

RO Property TRecordList.GroupBy (F1, F2, F3 As TField) As TStringList
F1TField.
F2TField.
F3TField.
ResultTStringList.

GroupByFormula

Lastnost GroupByFormula .

RO Property TRecordList.GroupByFormula (F1, F2, F3 As String) As TStringList
F1String.
F2String.
F3String.
ResultTStringList.

GroupByLists

Lastnost GroupByLists .

RO Property TRecordList.GroupByLists (F1, F2, F3 As TField) As TStringList
F1TField.
F2TField.
F3TField.
ResultTStringList.

GroupByListsFormula

Lastnost GroupByListsFormula .

RO Property TRecordList.GroupByListsFormula (F1, F2, F3 As String) As TStringList
F1String.
F2String.
F3String.
ResultTStringList.

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)
F1TFieldPrvo polje za primerjanje zapisov.
F2TFieldDrugo polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL.
F3TFieldTretje 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)
F1TFieldPrvo polje za primerjanje zapisov.
F2TFieldDrugo polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL.
F3TFieldTretje 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)
F1TFieldPrvo polje za primerjanje zapisov.
F2TFieldDrugo polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL.
F3TField.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)
F1TFieldPrvo polje za primerjanje zapisov.
F2TFieldDrugo polje za primerjanje zapisov. Če ga ne potrebujemo je lahko NIL.
F3TFieldTretje 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)
ListTRecordListLista 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)
ListTRecordListLista 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)
ListTRecordListLista s katero se primerja.

CopyList

Metoda CopyList .

Method TRecordList.CopyList (List As TRecordList)
ListTRecordList.

RemoveList

Metoda RemoveList .

Method TRecordList.RemoveList (List As TRecordList)
ListTRecordList.

Spreminjanje podatkov

ReplaceForm

Metoda ReplaceForm .

Method TRecordList.ReplaceForm As Long
ResultOptional Long.

ExecuteReplace

Metoda ExecuteReplace Izvede spremembo polja v vseh zapisih določene liste.

Method TRecordList.ExecuteReplace (F As TField, Formula As String) As Long
FTFieldPolje, ki se spreminja.
FormulaStringBasic izraz, ki vrne novo vrednost polja.
ResultOptional 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 polja1

ExecuteReplacNoOptimize

Metoda ExecuteReplacNoOptimize .

Method TRecordList.ExecuteReplacNoOptimize (F As TField, Formula As String) As Long
FTField.
FormulaString.
ResultOptional Long.

DeleteListData

Metoda DeleteListData .

Method TRecordList.DeleteListData (Confirm As Boolean) As Boolean
ConfirmBoolean.
ResultOptional 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)
DistanceFloat.
ErrorFloat.

OutlineFld

Metoda OutlineFld .

Method TRecordList.OutlineFld (DistanceFld As TField, Error As Float)
DistanceFldTField.
ErrorFloat.

Razno

CacheTiles

Metoda CacheTiles .

Method TRecordList.CacheTiles (S As String, FL, TL As Long)
SString.
FLLong.
TLLong.

FillToHTML

Metoda FillToHTML .

Method TRecordList.FillToHTML (TemplateFile, OutputFile As String, Offset As Float)
TemplateFileString.
OutputFileString.
OffsetFloat.

GenerateDocument

Metoda GenerateDocument .

Method TRecordList.GenerateDocument (TemplateFile, OutputFile, LayerTag As String, Word2003 As Boolean)
TemplateFileString.
OutputFileString.
LayerTagString.
Word2003Boolean.

GPSPot

Metoda GPSPot .

Method TRecordList.GPSPot (ByRef PA, ByRef PB As TPointArray, StopDistance, StopTime, GenError As Float)
PAByRef TPointArray.
PBByRef TPointArray.
StopDistanceFloat.
StopTimeFloat.
GenErrorFloat.

Destroy

Metoda Destroy uniči listo zapisov.

Method TRecordList.Destroy


Web

GetBoundingWindow

Lastnost GetBoundingWindow .

RO Property TRecordList.GetBoundingWindow (Offset As Float) As String
OffsetFloat.
ResultString.