Indeksiranje zapisov: Razlika med redakcijama

Iz SDMS
Jump to navigationJump to search
Vrstica 28: Vrstica 28:
 
ter rutino zapisali v ustrezni modul. Rutino je treba spremeniti tako, da bo po ukazu '''ZapID''' možno izbrati podatkovno plast in polje.
 
ter rutino zapisali v ustrezni modul. Rutino je treba spremeniti tako, da bo po ukazu '''ZapID''' možno izbrati podatkovno plast in polje.
  
Nazaj na [[LGB Navodila]]
+
Nazaj na [[Zanimive rutine]]

Redakcija: 22:07, 26. november 2007

Med mnogimi zapisi se včasih najlažje znajdemo, če jih oštevilčimo. Polje z indeksom je še posebej uporabno za razvrščanje in povezavo plasti brez topologije.

Najprej pripravimo v podatkovni plasti [Podatkovna plast] numerično polje Polje za indeks. S filtrom izberemo zapise, ki jih želimo oštevilčiti. Po želji jih razvrstimo.

V [konzolo] - pritisnemo preslednico - vnesemo spodnje vrstice. V drugo vrstico vnesemo dejansko ime podatkovne plasti in v tretjo dejansko ime polja za indeks. Pritisnemo Enter.

Dim L As TLayer, F AS TField, I As Long
L = [Podatkovna plast]
F = L.GetField ("Polje")
L.BeginMultipleUpdate
For I = 0 To L.FilteredRecords.Count - 1
  Hint (IntToStr (I))
  L.EditRecord.Edit (L.FilteredRecords.Items (I))
  L.EditRecord.FldAsNumber (F) = I + 1
  L.EditRecord.Update
Next
L.EndMultipleUpdate

K vsem razvrščenim filtriranim zapisom se v Polje zapišejo zaporedna števila od 1 naprej.

Naprednejši boste dodali na začetku in koncu še vrstici

Sub ZapID
...
EndSub

ter rutino zapisali v ustrezni modul. Rutino je treba spremeniti tako, da bo po ukazu ZapID možno izbrati podatkovno plast in polje.

Nazaj na Zanimive rutine