TField: Razlika med redakcijama
m (Nova stran z vsebino: {{Work}} Razred '''TField''' vsebuje informacije o poljih za podatkovno plast. ==Lastnosti polja== <source>Dim L as TLayer, D As TDataSet, F As TField, I, J As Long L = [Neka ...) |
m (→Analize liste zapisov=) |
||
| Vrstica 287: | Vrstica 287: | ||
==Analize liste zapisov=== | ==Analize liste zapisov=== | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
===ListGroupBy=== | ===ListGroupBy=== | ||
| Vrstica 333: | Vrstica 305: | ||
</declaration> | </declaration> | ||
<source></source> | <source></source> | ||
| + | |||
| + | ===ListMin=== | ||
| + | Lastnost '''ListMin''' določa minimalno vrednost za podano polje iz vseh zapisov. | ||
| + | <declaration> | ||
| + | RO Property|TField.ListMin | ||
| + | RL|TRecordList|. | ||
| + | Result|Float|. | ||
| + | </declaration> | ||
| + | <source>Dim F as TField | ||
| + | F = [Neka plast].GetField ("ImePolja") | ||
| + | Hint ('Povprečje: ' + FloatToStr (F.ListMin ([Neka plast].AllRecords)))</source> | ||
===ListMax=== | ===ListMax=== | ||
| Vrstica 345: | Vrstica 328: | ||
Hint ('Povprečje: ' + FloatToStr (F.ListMax ([Neka past].AllRecords)))</source> | Hint ('Povprečje: ' + FloatToStr (F.ListMax ([Neka past].AllRecords)))</source> | ||
| − | === | + | ===ListSum=== |
| − | Lastnost ''' | + | Lastnost '''ListSum''' določa vsoto vseh vrednosti za podano polje iz vseh zapisov. |
| + | <declaration> | ||
| + | RO Property|TField.ListSum | ||
| + | RL|TRecordList|. | ||
| + | Result|Float|. | ||
| + | </declaration> | ||
| + | <source>Dim F as TField | ||
| + | F = [Neka palst].GetField ("ImePolja") | ||
| + | Hint ('Povprečje: ' + FloatToStr (F.ListSum ([Neka plast].AllRecords)))</source> | ||
| + | |||
| + | ===ListAvg=== | ||
| + | Lastnost '''ListAvg''' določa povprečno vrednost za podano polje iz vseh zapisov in vseh nizov. Za podrobnejši opis nizov podatkov in večkratnih zapisov nizov podatkov glej Struktura nizov podatkov. | ||
<declaration> | <declaration> | ||
| − | RO Property|TField. | + | RO Property|TField.ListAvg |
RL|TRecordList|. | RL|TRecordList|. | ||
Result|Float|. | Result|Float|. | ||
| Vrstica 354: | Vrstica 348: | ||
<source>Dim F as TField | <source>Dim F as TField | ||
F = [Neka plast].GetField ("ImePolja") | F = [Neka plast].GetField ("ImePolja") | ||
| − | Hint ('Povprečje: ' + FloatToStr (F. | + | Hint ('Povprečje: ' + FloatToStr (F.ListAvg ([Neka palst].AllRecords)))</source> |
===ListRange=== | ===ListRange=== | ||
| Vrstica 366: | Vrstica 360: | ||
<source></source> | <source></source> | ||
| − | === | + | ===ListAnalyze=== |
| − | + | Metoda '''ListAnalyze''' analizira vse zapise za podano polje v celotni bazi podatkov, in poda minimalno, maksimalno, povprečno vrednost, ter število zapisov. | |
<declaration> | <declaration> | ||
| − | + | Method|TField.ListAnalyze | |
| − | RL|TRecordList|. | + | RL|TRecordList|Lista zapisov za analizo. |
| − | + | Min|ByRef Float|Minimalna vrednost. | |
| + | Max|ByRef Float|Maksimalna vrednost. | ||
| + | Sum|ByRef Float|Vsota vseh vrednosti. | ||
| + | Cnt|ByRef Long|Število analiziranih podatkov, ki se lahko razlikuje od števila vseh zapisov, če je polje v večkratnem nizu podatkov. | ||
| + | IsFloat|ByRef Boolean|Vrne vrednost True, če so vsa polja tipa Floating point. | ||
</declaration> | </declaration> | ||
| − | <source>Dim F as TField | + | <source>Dim Amin, AMax, ASum As Float, ACount as Long, M As Boolean |
| + | Dim F as TField | ||
F = [Neka palst].GetField ("ImePolja") | F = [Neka palst].GetField ("ImePolja") | ||
| − | Hint (' | + | F.ListAnalyze ([NekaPlast].AllRecords, Amin, Amax, Asum, ACount, M) |
| − | + | Hint ('Minimalna vrednost: ' + FloatToStr (AMin))</source> | |
===CurrentRecord=== | ===CurrentRecord=== | ||
Redakcija: 15:58, 26. november 2010
Razred TField vsebuje informacije o poljih za podatkovno plast.
Vsebina
Lastnosti polja
Dim L as TLayer, D As TDataSet, F As TField, I, J As Long
L = [Neka plast]
For I = 0 To L.DataSetCount - 1
D = L.DataSets (I)
For J = 0 To D.FieldCount - 1
Message ("Lastnosti Polja",
"Ime: " + F.Name + Line +
"Dodatno ime: " + F.Alias + Line +
"Komentar: " + F.Comment + Line +
"ID: $" + IntToHex (F.ID) + Line +
"Tip polja: " + IntToStr (F.FieldType) + Line +
"Format: " + F.Format + Line +
"Formula: " + F.Formula + Line +
"Lookup: " + F.Lookup + Line +
"Niz podatkov: " + F.Parent.Name + Line +
"Podatkovna plast: " + F.Parent.Parent.Name
)
Next
NextName
Lastnost Name določa ime polja, in se lahko spremeni.
| Property TField.Name As String | ||
| Result | String | . |
Alias
Lastnost Alias omogoča nastavitev drugega imena polja
| Property TField.Alias As String | ||
| Result | String | . |
Comment
Lastnost Comment omogoča zapis komentarja za objekt tipa TField.
| Property TField.Comment As String | ||
| Result | String | . |
ID
Lastnost ID vrne unikatno identifikacijsko kodo, ki se samodejno kreira pri kreiranju polja in se nikdar ne spremeni.
| RO Property TField.ID As Long | ||
| Result | Long | . |
FieldType
Lastnost FieldType poda tip polja. Tip polja je eno od Field Type konstant.
| Property TField.FieldType As Long | ||
| Result | Long | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
If Assigned (F) Then
F.CurrentRecord = [Neka plast].AllRecords.Items (0)
If F.FieldType = ftString Then
Hint (F.AsString)
EndIF
If F.FieldType = ftnumber Then
Hint FloatToStr ((F.AsNumber))
EndIF
EndIFFormat
Lastnost Format določa format polja.
| Property TField.Format As String | ||
| Result | String | . |
Formula
Lastnost Formula določa formulo polja.
| Property TField.Formula As String | ||
| Result | String | . |
Lookup
Lastnost Lookup določa vrednost relacije za podano polje.
| Property TField.Lookup As String | ||
| Result | String | . |
FullName
Lastnost FullName vrne polno ime polja in ime niza podatkov, v katerem se polje nahaja. Če obstaja samo en niz podatkov, se ime niza podatkov ne izpisuje. Ime polja je zapisano v oglatih oklepajih.
| RO Property TField.FullName As String | ||
| Result | String | . |
Importance
Lastnost Importance .
| Property TField.Importance As Long | ||
| Result | Long | . |
Parent
Lastnost Parent določa niz podatkov, kateremu pripada podano polje.
| Property TField.Parent As TDataSet | ||
| Result | TDataSet | . |
InternalFieldType
Lastnost InternalFieldType .
| RO Property TField.InternalFieldType As String | ||
| Result | String | . |
InternalFormat
Lastnost InternalFormat .
| RO Property TField.InternalFormat As String | ||
| Result | String | . |
Vrednost polja
AsString
Lastnost AsString določa alfanumerično vrednost polja (iz prvega niza podatkov, v primeru večkratnega niza podatkov).
| RO Property TField.AsString As String | ||
| Result | String | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
If Assigned (F) Then
F.CurrentRecord = [Neka plast].AllRecords.Items (0)
Hint (F.AsString)
EndIFAsNumber
Lastnost AsNumber vrne numerično vrednost polja (iz prvega niza podatkov, v primeru večkratnega niza podatkov).
| RO Property TField.AsNumber As Float | ||
| Result | Float | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
If Assigned (F) Then
F.CurrentRecord = [Neka plast].AllRecords.Items (0)
Hint (FormatFloat ("#0.0", F.AsNumber))
EndIFAsBoolean
Lastnost AsBoolean .
| RO Property TField.AsBoolean As Boolean | ||
| Result | Boolean | . |
Vrednost polja v večkratnem nizu podatkov
AsLines
Lastnost AsLines določa tekst vseh zapisov, iz večkratnega niza podatkov, zapisanih tako, da je vsak zapis v svoji vrstici.
| RO Property TField.AsLines As String | ||
| Result | String | . |
F = [Neka plast].GetField ("ImePolja")
F.CurrentRecord = [Neka plast].ClickedRecords.Items (1)
Hint (F.AsLine)
// v temi besedilo izberite polje (ki je del večkratnega niza podatkov) in za poljem zapišite .AsLine
[SomeField].AsLineAsDistinctLines
Lastnost AsDistinctLines .
| RO Property TField.AsDistinctLines As String | ||
| Result | String | . |
AsSortedLines
Lastnost AsSortedLines .
| RO Property TField.AsSortedLines As String | ||
| Result | String | . |
LineCount
Lastnost LineCount določa število zapisov polja iz vseh večkratnih nizov podatkov. Za podrobnejši opis nizov podatkov in večkratnih zapisov nizov podatkov glej Struktura nizov podatkov.
| RO Property TField.LineCount As Long | ||
| Result | Long | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
If Assigned (F) Then
Message ("Polje:" + F.Name, "Število vseh:" + FloatToStr(F.LineCount))
EndIFLineAsString
Lastnost LineAsString .
| RO Property TField.LineAsString (Line As Long) As String | ||
| Line | Long | . |
| Result | String | . |
// v temi besedilo izberite polje (ki je del večkratnega niza podatkov) in zapišite:
FloatToStr( [Polje].LineAsString(0))LineAsNumber
Lastnost LineAsNumber določa numerično vrednost polja iz index-tega večkratnega niza podatkov. Za podrobnejši opis nizov podatkov in večkratnih zapisov nizov podatkov glej Struktura nizov podatkov.
| RO Property TField.LineAsNumber (Line As Long) As Float | ||
| Line | Long | . |
| Result | Float | . |
// v temi besedilo izberite polje (ki je del večkratnega niza podatkov) in zapišite:
FloatToStr( [Polje].LineAsNumber(0))LineMin
Lastnost LineMin določa najmanjšo vrednost polja iz vseh večkratnih nizov podatkov. Za podrobnejši opis nizov podatkov in večkratnih zapisov nizov podatkov glej Struktura nizov podatkov.
| RO Property TField.LineMin As Float | ||
| Result | Float | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
If Assigned (F) Then
Message ("Polje:" + F.Name, "Najmanjša vrednost:" + FloatToStr(F.LineMin))
EndIFLineMax
Lastnost LineMax določa največjo vrednost polja iz vseh večkratnih nizov podatkov. Za podrobnejši opis nizov podatkov in večkratnih zapisov nizov podatkov glej Struktura nizov podatkov.
| RO Property TField.LineMax As Float | ||
| Result | Float | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
If Assigned (F) Then
Message ("Polje:" + F.Name, "Največja vrednost:" + FloatToStr(F.LineMax))
EndIfLineSum
Lastnost LineSum določa vsoto polja iz vseh večkratnih nizov podatkov. Za podrobnejši opis nizov podatkov in večkratnih zapisov nizov podatkov glej Struktura nizov podatkov.
| RO Property TField.LineSum As Float | ||
| Result | Float | . |
Dim F as TField
F = [Nekqa plast].GetField ("ImePolja")
If Assigned (F) Then
Message ("Polje:" + F.Name, "Vsota:" + FloatToStr(F.LineSum))
EndIFLineAvg
Lastnost LineAvg določa povprečno vrednost polja iz vseh večkratnih nizov podatkov. Za podrobnejši opis nizov podatkov in večkratnih zapisov nizov podatkov glej Struktura nizov podatkov.
| RO Property TField.LineAvg As Float | ||
| Result | Float | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
If Assigned (F) Then
Message ("Polje:" + F.Name, "Povprečje:" + FloatToStr(F.LineAvg))
EndIfLineSumCondition
Lastnost LineSumCondition .
| RO Property TField.LineSumCondition (Condition As String) As Float | ||
| Condition | String | . |
| Result | Float | . |
Analize liste zapisov=
ListGroupBy
Lastnost ListGroupBy .
| RO Property TField.ListGroupBy (RL As TRecordList) As TStringList | ||
| RL | TRecordList | . |
| Result | TStringList | . |
ListGroupByLists
Lastnost ListGroupByLists .
| RO Property TField.ListGroupByLists (RL As TRecordList) As TStringList | ||
| RL | TRecordList | . |
| Result | TStringList | . |
ListMin
Lastnost ListMin določa minimalno vrednost za podano polje iz vseh zapisov.
| RO Property TField.ListMin (RL As TRecordList) As Float | ||
| RL | TRecordList | . |
| Result | Float | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
Hint ('Povprečje: ' + FloatToStr (F.ListMin ([Neka plast].AllRecords)))ListMax
Lastnost ListMax določa maksimalno vrednost za podano polje iz vseh zapisov.
| RO Property TField.ListMax (RL As TRecordList) As Float | ||
| RL | TRecordList | . |
| Result | Float | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
Hint ('Povprečje: ' + FloatToStr (F.ListMax ([Neka past].AllRecords)))ListSum
Lastnost ListSum določa vsoto vseh vrednosti za podano polje iz vseh zapisov.
| RO Property TField.ListSum (RL As TRecordList) As Float | ||
| RL | TRecordList | . |
| Result | Float | . |
Dim F as TField
F = [Neka palst].GetField ("ImePolja")
Hint ('Povprečje: ' + FloatToStr (F.ListSum ([Neka plast].AllRecords)))ListAvg
Lastnost ListAvg določa povprečno vrednost za podano polje iz vseh zapisov in vseh nizov. Za podrobnejši opis nizov podatkov in večkratnih zapisov nizov podatkov glej Struktura nizov podatkov.
| RO Property TField.ListAvg (RL As TRecordList) As Float | ||
| RL | TRecordList | . |
| Result | Float | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
Hint ('Povprečje: ' + FloatToStr (F.ListAvg ([Neka palst].AllRecords)))ListRange
Lastnost ListRange .
| RO Property TField.ListRange (RL As TRecordList, RangeCnt As Long) As TNumArray1 | ||
| RL | TRecordList | . |
| RangeCnt | Long | . |
| Result | TNumArray1 | . |
ListAnalyze
Metoda ListAnalyze analizira vse zapise za podano polje v celotni bazi podatkov, in poda minimalno, maksimalno, povprečno vrednost, ter število zapisov.
| Method TField.ListAnalyze (RL As TRecordList, ByRef Min, ByRef Max, ByRef Sum As Float, ByRef Cnt As Long, ByRef IsFloat As Boolean) | ||
| RL | TRecordList | Lista zapisov za analizo. |
| Min | ByRef Float | Minimalna vrednost. |
| Max | ByRef Float | Maksimalna vrednost. |
| Sum | ByRef Float | Vsota vseh vrednosti. |
| Cnt | ByRef Long | Število analiziranih podatkov, ki se lahko razlikuje od števila vseh zapisov, če je polje v večkratnem nizu podatkov. |
| IsFloat | ByRef Boolean | Vrne vrednost True, če so vsa polja tipa Floating point. |
Dim Amin, AMax, ASum As Float, ACount as Long, M As Boolean
Dim F as TField
F = [Neka palst].GetField ("ImePolja")
F.ListAnalyze ([NekaPlast].AllRecords, Amin, Amax, Asum, ACount, M)
Hint ('Minimalna vrednost: ' + FloatToStr (AMin))CurrentRecord
Lastnost CurrentRecord določa trenutno aktiven zapis, ki se bo izpisal, izrisal,... Vrednost je enako kot v primeru TLayer.CurrentRecord ali TDataSet.CurrentRecord lastnosti. Ko pride do spremembe, se izvede sprememba tudi v ostalih lastnostih. Ta lastnost se uporablja pri lastnostih razreda TField.
| Property TField.CurrentRecord As TRecord | ||
| Result | TRecord | . |
Dim F as TField
F = [Neka plast].GetField ("ImePolja")
If Assigned (F) Then
F.CurrentRecord = [Neka plast].AllRecords.Items (0)
Hint (F.AsString)
EndIF