ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/examples/local-employeedb/unit1.lfm
Revision: 263
Committed: Thu Dec 6 15:55:01 2018 UTC (5 years, 4 months ago) by tony
File size: 27908 byte(s)
Log Message:
Release 2.3.2 committed

File Contents

# User Rev Content
1 tony 37 object Form1: TForm1
2 tony 107 Left = 632
3 tony 37 Height = 482
4 tony 107 Top = 351
5 tony 37 Width = 1043
6     Caption = 'Employee List'
7 tony 68 ClientHeight = 462
8 tony 37 ClientWidth = 1043
9 tony 68 DefaultMonitor = dmPrimary
10 tony 37 Menu = MainMenu1
11     OnClose = FormClose
12     OnShow = FormShow
13 tony 68 Position = poScreenCenter
14 tony 263 LCLVersion = '2.0.0.2'
15 tony 37 object Button1: TButton
16     Left = 956
17     Height = 25
18     Top = 48
19     Width = 75
20     Action = AddEmployee
21     Anchors = [akTop, akRight]
22     TabOrder = 0
23     end
24     object Button2: TButton
25     Left = 956
26     Height = 25
27     Top = 86
28     Width = 75
29     Action = EditEmployee
30     Anchors = [akTop, akRight]
31     TabOrder = 1
32     end
33     object Button3: TButton
34     Left = 956
35     Height = 25
36     Top = 125
37     Width = 75
38     Action = DeleteEmployee
39     Anchors = [akTop, akRight]
40     TabOrder = 2
41     end
42     object Label1: TLabel
43     Left = 17
44 tony 263 Height = 14
45 tony 37 Top = 14
46 tony 263 Width = 87
47 tony 37 Caption = 'Started Before'
48     ParentColor = False
49     end
50     object BeforeDate: TDateEdit
51     Left = 112
52 tony 263 Height = 24
53 tony 37 Top = 8
54     Width = 80
55     CalendarDisplaySettings = [dsShowHeadings, dsShowDayNames]
56     DateOrder = doNone
57     ButtonWidth = 23
58     NumGlyphs = 1
59     MaxLength = 0
60     OnChange = BeforeDateChange
61     TabOrder = 3
62     end
63     object Label2: TLabel
64     Left = 241
65 tony 263 Height = 14
66 tony 37 Top = 14
67 tony 263 Width = 78
68 tony 37 Caption = 'Started After'
69     ParentColor = False
70     end
71     object AfterDate: TDateEdit
72     Left = 333
73 tony 263 Height = 24
74 tony 37 Top = 8
75     Width = 80
76     CalendarDisplaySettings = [dsShowHeadings, dsShowDayNames]
77     DateOrder = doNone
78     ButtonWidth = 23
79     NumGlyphs = 1
80     MaxLength = 0
81     OnChange = BeforeDateChange
82     TabOrder = 4
83     end
84     object Panel1: TPanel
85     Left = 0
86 tony 68 Height = 414
87 tony 37 Top = 42
88     Width = 921
89     Anchors = [akTop, akLeft, akRight, akBottom]
90     BevelOuter = bvNone
91 tony 68 ClientHeight = 414
92 tony 37 ClientWidth = 921
93     Color = clBackground
94     ParentColor = False
95     TabOrder = 5
96     object IBDynamicGrid1: TIBDynamicGrid
97     Left = 0
98 tony 68 Height = 364
99 tony 37 Top = 0
100     Width = 921
101     Align = alClient
102     Color = clWindow
103     Columns = <
104     item
105     Title.Alignment = taCenter
106     Title.Caption = 'Last Name'
107     Width = 100
108     FieldName = 'LAST_NAME'
109     AutoSizeColumn = False
110     InitialSortColumn = False
111     DBLookupProperties.ItemHeight = 0
112     DBLookupProperties.ItemWidth = 0
113     DBLookupProperties.AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
114     end
115     item
116     Title.Alignment = taCenter
117     Title.Caption = 'First Name'
118     Width = 100
119     FieldName = 'FIRST_NAME'
120     AutoSizeColumn = False
121     InitialSortColumn = False
122     DBLookupProperties.ItemHeight = 0
123     DBLookupProperties.ItemWidth = 0
124     DBLookupProperties.AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
125     end
126     item
127     Alignment = taCenter
128     Title.Alignment = taCenter
129     Title.Caption = 'Emp No.'
130     Width = 60
131     FieldName = 'EMP_NO'
132     AutoSizeColumn = False
133     InitialSortColumn = False
134     DBLookupProperties.ItemHeight = 0
135     DBLookupProperties.ItemWidth = 0
136     DBLookupProperties.AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
137     end
138     item
139     ReadOnly = True
140     Title.Alignment = taCenter
141     Title.Caption = 'Dept'
142     Width = 200
143     FieldName = 'DEPT_PATH'
144     AutoSizeColumn = True
145     InitialSortColumn = False
146     DBLookupProperties.ItemHeight = 0
147     DBLookupProperties.ItemWidth = 0
148     DBLookupProperties.AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
149     end
150     item
151     ButtonStyle = cbsPickList
152     Title.Alignment = taCenter
153     Title.Caption = 'Located'
154     Width = 100
155     FieldName = 'JOB_COUNTRY'
156     AutoSizeColumn = False
157     InitialSortColumn = False
158     DBLookupProperties.ItemHeight = 0
159     DBLookupProperties.ItemWidth = 0
160     DBLookupProperties.ListSource = CountrySource
161     DBLookupProperties.ListField = 'COUNTRY'
162     DBLookupProperties.AutoInsert = False
163     DBLookupProperties.AutoComplete = False
164     end
165     item
166     Title.Alignment = taCenter
167     Title.Caption = 'Started'
168     Width = 80
169     FieldName = 'HIRE_DATE'
170     AutoSizeColumn = False
171     InitialSortColumn = False
172     DBLookupProperties.ItemHeight = 0
173     DBLookupProperties.ItemWidth = 0
174     DBLookupProperties.AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
175     end
176     item
177     Title.Alignment = taCenter
178     Title.Caption = 'Salary'
179     Width = 120
180     FieldName = 'SALARY'
181     ColumnTotalsControl = DBText1
182     AutoSizeColumn = False
183     InitialSortColumn = False
184     DBLookupProperties.ItemHeight = 0
185     DBLookupProperties.ItemWidth = 0
186     DBLookupProperties.AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
187     end>
188     DataSource = EmployeeSource
189     Scrollbars = ssAutoBoth
190     TabOrder = 0
191     EditorPanel = EmployeeEditorPanel
192     ExpandEditorPanelBelowRow = False
193     Descending = False
194     EditorBorderStyle = bsSingle
195     DefaultPositionAtEnd = False
196     IndexFieldNames = 'EMP_NO'
197     end
198     object Panel2: TPanel
199     Left = 0
200     Height = 50
201 tony 68 Top = 364
202 tony 37 Width = 921
203     Align = alBottom
204     BevelOuter = bvNone
205     ClientHeight = 50
206     ClientWidth = 921
207     ParentColor = False
208     TabOrder = 1
209     object Button5: TButton
210     Left = 80
211     Height = 25
212     Top = 16
213     Width = 75
214     Action = CancelChanges
215     Anchors = [akLeft, akBottom]
216     TabOrder = 0
217     end
218     object Button4: TButton
219     Left = 1
220     Height = 25
221     Top = 16
222     Width = 75
223     Action = SaveChanges
224     Anchors = [akLeft, akBottom]
225     TabOrder = 1
226     end
227     object DBText1: TDBText
228     Left = 688
229     Height = 27
230     Top = 16
231 tony 263 Width = 49
232 tony 37 Alignment = taRightJustify
233     Anchors = [akTop, akLeft, akBottom]
234     DataField = 'TOTALSALARIES'
235     DataSource = TotalsSource
236     ParentColor = False
237     end
238     end
239     object EmployeeEditorPanel: TPanel
240     Left = 8
241     Height = 80
242     Top = 40
243     Width = 832
244     BevelOuter = bvNone
245     BorderWidth = 2
246     BorderStyle = bsSingle
247 tony 263 ClientHeight = 78
248     ClientWidth = 830
249 tony 37 Color = clWindow
250     ParentColor = False
251     TabOrder = 2
252     Visible = False
253     object Label3: TLabel
254     Left = 0
255 tony 263 Height = 14
256 tony 37 Top = 7
257 tony 263 Width = 83
258 tony 37 Caption = 'Employee No.'
259     ParentColor = False
260     end
261     object DBEdit1: TDBEdit
262     Left = 90
263 tony 263 Height = 24
264 tony 37 Top = 2
265     Width = 120
266     DataField = 'EMP_NO'
267     DataSource = EmployeeSource
268     CharCase = ecNormal
269     MaxLength = 0
270     TabOrder = 0
271     end
272     object Label4: TLabel
273     Left = 12
274 tony 263 Height = 14
275 tony 37 Top = 32
276 tony 263 Width = 64
277 tony 37 Caption = 'First Name'
278     ParentColor = False
279     end
280     object DBEdit2: TDBEdit
281     Left = 90
282 tony 263 Height = 24
283 tony 37 Top = 24
284     Width = 120
285     DataField = 'FIRST_NAME'
286     DataSource = EmployeeSource
287     CharCase = ecNormal
288     MaxLength = 0
289     TabOrder = 1
290     end
291     object Label5: TLabel
292     Left = 12
293 tony 263 Height = 14
294 tony 37 Top = 56
295 tony 263 Width = 64
296 tony 37 Caption = 'Last Name'
297     ParentColor = False
298     end
299     object DBEdit3: TDBEdit
300     Left = 90
301 tony 263 Height = 24
302 tony 37 Top = 46
303     Width = 120
304     DataField = 'LAST_NAME'
305     DataSource = EmployeeSource
306     CharCase = ecNormal
307     MaxLength = 0
308     TabOrder = 2
309     end
310     object Label6: TLabel
311     Left = 216
312 tony 263 Height = 14
313 tony 37 Top = 7
314 tony 263 Width = 77
315 tony 37 Caption = 'Date Started'
316     ParentColor = False
317     end
318     object IBDateEdit1: TDBDateEdit
319     Left = 300
320 tony 263 Height = 24
321 tony 37 Top = 2
322     Width = 80
323     CalendarDisplaySettings = [dsShowHeadings, dsShowDayNames]
324     DateOrder = doNone
325     ButtonWidth = 23
326     AutoSelect = False
327     NumGlyphs = 1
328     MaxLength = 0
329     TabOrder = 3
330     DataField = 'HIRE_DATE'
331     DataSource = EmployeeSource
332     end
333     object Label7: TLabel
334     Left = 252
335 tony 263 Height = 14
336 tony 37 Top = 32
337 tony 263 Width = 37
338 tony 37 Caption = 'Salary'
339     ParentColor = False
340     end
341     object DBEdit4: TDBEdit
342     Left = 300
343 tony 263 Height = 24
344 tony 37 Top = 24
345     Width = 104
346     DataField = 'SALARY'
347     DataSource = EmployeeSource
348     CharCase = ecNormal
349     MaxLength = 0
350     TabOrder = 5
351     end
352     object Label8: TLabel
353 tony 263 Left = 696
354     Height = 14
355 tony 37 Top = 54
356 tony 263 Width = 24
357 tony 37 Anchors = [akTop, akRight]
358     Caption = 'Ext.'
359     ParentColor = False
360     end
361     object DBEdit5: TDBEdit
362 tony 263 Left = 720
363     Height = 24
364 tony 37 Top = 48
365     Width = 40
366     DataField = 'PHONE_EXT'
367     DataSource = EmployeeSource
368     Anchors = [akTop, akRight]
369     CharCase = ecNormal
370     MaxLength = 0
371     TabOrder = 4
372     end
373     object Label9: TLabel
374     Left = 536
375 tony 263 Height = 14
376 tony 37 Top = 7
377 tony 263 Width = 51
378 tony 37 Caption = 'Location'
379     ParentColor = False
380     end
381     object Label10: TLabel
382     Left = 413
383 tony 263 Height = 14
384 tony 37 Top = 9
385 tony 263 Width = 59
386 tony 37 Caption = 'Job Grade'
387     ParentColor = False
388     end
389     object JobGradeDBComboBox: TDBComboBox
390     Left = 480
391     Height = 23
392     Top = 2
393     Width = 48
394     AutoSize = False
395     DataField = 'JOB_GRADE'
396     DataSource = EmployeeSource
397 tony 263 ItemHeight = 0
398 tony 37 Items.Strings = (
399     '1'
400     '2'
401     '3'
402     '4'
403     '5'
404     )
405     MaxLength = 0
406     OnCloseUp = JobGradeDBComboBoxCloseUp
407     Style = csDropDownList
408     TabOrder = 6
409     end
410     object Label11: TLabel
411     Left = 536
412 tony 263 Height = 14
413 tony 37 Top = 32
414 tony 263 Width = 48
415 tony 37 Caption = 'Job Title'
416     ParentColor = False
417     end
418     object Label12: TLabel
419     Left = 256
420 tony 263 Height = 14
421 tony 37 Top = 54
422 tony 263 Width = 33
423 tony 37 Caption = 'Dept.'
424     ParentColor = False
425     end
426     object SpeedButton1: TSpeedButton
427 tony 263 Left = 664
428 tony 37 Height = 25
429     Top = 48
430     Width = 23
431     Action = SelectDept
432     Anchors = [akTop, akRight]
433     end
434     object DBEdit6: TDBEdit
435     Left = 300
436 tony 263 Height = 24
437 tony 37 Top = 48
438 tony 263 Width = 356
439 tony 37 DataField = 'DEPT_PATH'
440     DataSource = EmployeeSource
441     ReadOnly = True
442     Anchors = [akTop, akLeft, akRight]
443     CharCase = ecNormal
444     MaxLength = 0
445     TabOrder = 7
446     end
447     object IBLookupComboEditBox2: TIBLookupComboEditBox
448     Left = 600
449     Height = 23
450     Top = 0
451 tony 263 Width = 160
452 tony 37 Anchors = [akTop, akLeft, akRight]
453     AutoSize = False
454     DataField = 'JOB_COUNTRY'
455     DataSource = EmployeeSource
456     KeyField = 'COUNTRY'
457     ListField = 'COUNTRY'
458     ListFieldIndex = 0
459     ListSource = CountrySource
460     LookupCache = False
461     Style = csDropDownList
462     TabOrder = 8
463     AutoInsert = False
464     AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
465 tony 263 ItemHeight = 0
466 tony 37 end
467     object IBLookupComboEditBox1: TIBLookupComboEditBox
468     Left = 600
469     Height = 23
470     Top = 24
471 tony 263 Width = 160
472 tony 37 Anchors = [akTop, akLeft, akRight]
473     AutoSize = False
474     DataField = 'JOB_CODE'
475     DataSource = EmployeeSource
476     KeyField = 'JOB_CODE'
477     ListField = 'JOB_TITLE'
478     ListFieldIndex = 0
479     ListSource = JobCodeSource
480     LookupCache = False
481     Style = csDropDownList
482     TabOrder = 9
483     AutoInsert = False
484     AutoCompleteText = [cbactEnabled, cbactEndOfLineComplete, cbactSearchAscending]
485 tony 263 ItemHeight = 0
486 tony 37 end
487     object Panel3: TPanel
488 tony 263 Left = 768
489 tony 37 Height = 67
490     Top = 3
491     Width = 56
492     Anchors = [akTop, akRight]
493     Caption = 'No Image'
494     ClientHeight = 67
495     ClientWidth = 56
496     Font.Height = -10
497     ParentFont = False
498     TabOrder = 10
499     object DBImage1: TDBImage
500     Left = 1
501     Height = 65
502     Top = 1
503     Width = 54
504     Align = alClient
505     Center = True
506     DataField = 'PHOTO'
507     DataSource = EmployeeSource
508     OnDBImageRead = DBImage1DBImageRead
509     Proportional = True
510     end
511     end
512     end
513     end
514     object Label13: TLabel
515     Left = 456
516 tony 263 Height = 14
517 tony 37 Top = 14
518 tony 263 Width = 79
519 tony 37 Caption = 'Salary Range'
520     ParentColor = False
521     end
522     object SalaryRange: TComboBox
523     Left = 544
524 tony 263 Height = 25
525 tony 37 Top = 8
526     Width = 272
527 tony 263 ItemHeight = 0
528 tony 37 ItemIndex = 0
529     Items.Strings = (
530     'None Specified'
531     'Below $40,000'
532     'Between $40,000 and $100,000'
533     'Above $100,000'
534     )
535     OnCloseUp = BeforeDateChange
536     Style = csDropDownList
537     TabOrder = 6
538     Text = 'None Specified'
539     end
540     object IBDatabase1: TIBDatabase
541 tony 45 Connected = False
542 tony 37 LoginPrompt = False
543     AfterConnect = IBDatabase1AfterConnect
544 tony 45 CreateIfNotExists = False
545 tony 37 AllowStreamedConnected = False
546     DatabaseName = 'employee'
547     Params.Strings = (
548 tony 209 'lc_ctype=UTF8'
549 tony 37 'user_name=SYSDBA'
550     )
551     DefaultTransaction = IBTransaction1
552     IdleTimer = 0
553     TraceFlags = []
554 tony 45 UseDefaultSystemCodePage = False
555 tony 37 left = 832
556     top = 168
557     end
558     object IBTransaction1: TIBTransaction
559     Active = False
560     DefaultDatabase = IBDatabase1
561     Params.Strings = (
562     'read_committed'
563     'rec_version'
564     'nowait'
565     )
566     left = 872
567     top = 168
568     end
569     object EmployeeSource: TDataSource
570     DataSet = Employees
571     left = 832
572     top = 336
573     end
574     object ActionList1: TActionList
575     left = 832
576     top = 416
577     object AddEmployee: TAction
578     Caption = 'Add'
579     OnExecute = AddEmployeeExecute
580     end
581     object EditEmployee: TAction
582     Caption = 'Edit'
583     OnExecute = EditEmployeeExecute
584     OnUpdate = EditEmployeeUpdate
585     end
586     object DeleteEmployee: TAction
587     Caption = 'Delete'
588     OnExecute = DeleteEmployeeExecute
589     OnUpdate = EditEmployeeUpdate
590     end
591     object SaveChanges: TAction
592     Caption = 'Save'
593     OnExecute = SaveChangesExecute
594     OnUpdate = SaveChangesUpdate
595     end
596     object CancelChanges: TAction
597     Caption = 'Cancel'
598     OnExecute = CancelChangesExecute
599     OnUpdate = SaveChangesUpdate
600     end
601     object SelectDept: TAction
602     Caption = '...'
603     OnExecute = SelectDeptExecute
604     end
605     object NewDatabase: TAction
606     Category = 'LocalDB'
607     Caption = 'Reinitialise Database'
608     OnExecute = NewDatabaseExecute
609     end
610     object SaveDatabase: TAction
611     Category = 'LocalDB'
612     Caption = 'Save Database to Archive'
613     OnExecute = SaveDatabaseExecute
614     end
615     object RestoreDatabase: TAction
616     Category = 'LocalDB'
617     Caption = 'Restore Database From Archive'
618     OnExecute = RestoreDatabaseExecute
619     end
620     object Quit: TAction
621     Caption = 'Quit'
622     OnExecute = QuitExecute
623     end
624     end
625     object CountrySource: TDataSource
626     DataSet = Countries
627     left = 832
628     top = 296
629     end
630     object TotalsQuery: TIBQuery
631 tony 45 AllowAutoActivateTransaction = False
632 tony 37 Database = IBDatabase1
633     Transaction = IBTransaction1
634     BeforeOpen = EmployeesBeforeOpen
635     BufferChunks = 1000
636     CachedUpdates = False
637 tony 263 EnableStatistics = False
638 tony 37 GenerateParamNames = False
639     GeneratorField.ApplyOnEvent = gaeOnNewRecord
640 tony 263 MasterDetailDelay = 0
641 tony 37 SQL.Strings = (
642     'Select sum(Salary) as TotalSalaries'
643     'From EMPLOYEE'
644     )
645     Params = <>
646     DataSetCloseAction = dcDiscardChanges
647     left = 872
648     top = 376
649     object TotalsQueryTOTALSALARIES: TIBBCDField
650     DisplayWidth = 18
651     FieldKind = fkData
652     FieldName = 'TOTALSALARIES'
653     Index = 0
654     LookupCache = False
655     ProviderFlags = [pfInUpdate, pfInWhere]
656     ReadOnly = False
657     Required = False
658     OnGetText = EmployeesSALARYGetText
659     Precision = 18
660     Currency = False
661     MaxValue = 0
662     MinValue = 0
663     Size = 2
664     end
665     end
666     object TotalsSource: TDataSource
667     DataSet = TotalsQuery
668     left = 832
669     top = 376
670     end
671     object Employees: TIBDataSet
672 tony 45 AllowAutoActivateTransaction = False
673 tony 37 Database = IBDatabase1
674     Transaction = IBTransaction1
675 tony 107 ForcedRefresh = True
676 tony 37 AfterDelete = EmployeesAfterDelete
677     AfterEdit = EmployeesAfterDelete
678     AfterInsert = EmployeesAfterInsert
679     AfterOpen = EmployeesAfterOpen
680     AfterScroll = EmployeesAfterScroll
681     BeforeClose = EmployeesBeforeClose
682     BeforeOpen = EmployeesBeforeOpen
683     BufferChunks = 1000
684     CachedUpdates = False
685 tony 263 EnableStatistics = False
686 tony 37 DeleteSQL.Strings = (
687     'Delete From EMPLOYEE A'
688     'Where A.EMP_NO = :EMP_NO'
689     )
690     InsertSQL.Strings = (
691     'Insert Into EMPLOYEE(EMP_NO, FIRST_NAME, LAST_NAME, PHONE_EXT, HIRE_DATE, DEPT_NO, JOB_CODE, JOB_GRADE, JOB_COUNTRY, SALARY)'
692     'Values(:EMP_NO, :FIRST_NAME, :LAST_NAME, :PHONE_EXT, :HIRE_DATE, :DEPT_NO, :JOB_CODE, :JOB_GRADE, :JOB_COUNTRY, :SALARY)'
693     )
694     RefreshSQL.Strings = (
695     'Select A.EMP_NO, A.FIRST_NAME, A.LAST_NAME, A.PHONE_EXT, A.HIRE_DATE, A.DEPT_NO, A.JOB_CODE, '
696     'A.JOB_GRADE, A.JOB_COUNTRY, A.SALARY, A.FULL_NAME, A.DEPT_PATH, A.DEPT_KEY_PATH, A.PHOTO'
697     'From DEPTLIST A'
698     'Where A.EMP_NO = :EMP_NO'
699     )
700     SelectSQL.Strings = (
701     'Select A.EMP_NO, A.FIRST_NAME, A.LAST_NAME, A.PHONE_EXT, A.HIRE_DATE, A.DEPT_NO, A.JOB_CODE, '
702     'A.JOB_GRADE, A.JOB_COUNTRY, A.SALARY, A.FULL_NAME, A.DEPT_PATH, A.DEPT_KEY_PATH, A.PHOTO'
703     'From DEPTLIST A'
704     ''
705     )
706     ModifySQL.Strings = (
707     'Update EMPLOYEE A Set '#13#10' A.DEPT_NO = :DEPT_NO,'#13#10' A.FIRST_NAME = :FIRST_NAME,'#13#10' A.HIRE_DATE = :HIRE_DATE,'#13#10' A.JOB_CODE = :JOB_CODE,'#13#10' A.JOB_COUNTRY = :JOB_COUNTRY,'#13#10' A.JOB_GRADE = :JOB_GRADE,'#13#10' A.LAST_NAME = :LAST_NAME,'#13#10' A.PHONE_EXT = :PHONE_EXT,'#13#10' A.SALARY = :SALARY'
708     'Where A.EMP_NO = :OLD_EMP_NO'
709     )
710     GeneratorField.Generator = 'EMP_NO_GEN'
711     GeneratorField.Field = 'EMP_NO'
712     GeneratorField.ApplyOnEvent = gaeOnNewRecord
713     GenerateParamNames = False
714 tony 263 MasterDetailDelay = 0
715 tony 37 DataSetCloseAction = dcSaveChanges
716     AfterTransactionEnd = EmployeesAfterTransactionEnd
717     OnValidatePost = EmployeesValidatePost
718     left = 872
719     top = 336
720     object EmployeesEMP_NO: TSmallintField
721     DisplayWidth = 10
722     FieldKind = fkData
723     FieldName = 'EMP_NO'
724     Index = 0
725     LookupCache = False
726     ProviderFlags = [pfInUpdate, pfInWhere]
727     ReadOnly = False
728     Required = True
729     end
730     object EmployeesFIRST_NAME: TIBStringField
731     DisplayWidth = 15
732     FieldKind = fkData
733     FieldName = 'FIRST_NAME'
734     Index = 1
735     LookupCache = False
736     ProviderFlags = [pfInUpdate, pfInWhere]
737     ReadOnly = False
738     Required = True
739     Size = 15
740     end
741     object EmployeesLAST_NAME: TIBStringField
742     DisplayWidth = 20
743     FieldKind = fkData
744     FieldName = 'LAST_NAME'
745     Index = 2
746     LookupCache = False
747     ProviderFlags = [pfInUpdate, pfInWhere]
748     ReadOnly = False
749     Required = True
750     end
751     object EmployeesPHONE_EXT: TIBStringField
752     Alignment = taRightJustify
753     DisplayWidth = 4
754     FieldKind = fkData
755     FieldName = 'PHONE_EXT'
756     Index = 3
757     LookupCache = False
758     ProviderFlags = [pfInUpdate, pfInWhere]
759     ReadOnly = False
760     Required = False
761     Size = 4
762     end
763     object EmployeesHIRE_DATE: TDateTimeField
764     DisplayWidth = 10
765     FieldKind = fkData
766     FieldName = 'HIRE_DATE'
767     Index = 4
768     LookupCache = False
769     ProviderFlags = [pfInUpdate, pfInWhere]
770     ReadOnly = False
771     Required = True
772     end
773     object EmployeesDEPT_NO: TIBStringField
774     DisplayWidth = 3
775     FieldKind = fkData
776     FieldName = 'DEPT_NO'
777     Index = 5
778     LookupCache = False
779     ProviderFlags = [pfInUpdate, pfInWhere]
780     ReadOnly = False
781     Required = True
782     Size = 3
783     end
784     object EmployeesJOB_CODE: TIBStringField
785     DisplayWidth = 5
786     FieldKind = fkData
787     FieldName = 'JOB_CODE'
788     Index = 6
789     LookupCache = False
790     ProviderFlags = [pfInUpdate, pfInWhere]
791     ReadOnly = False
792     Required = True
793     OnChange = EmployeesJOB_CODEChange
794     Size = 5
795     end
796     object EmployeesJOB_GRADE: TSmallintField
797     DisplayWidth = 10
798     FieldKind = fkData
799     FieldName = 'JOB_GRADE'
800     Index = 7
801     LookupCache = False
802     ProviderFlags = [pfInUpdate, pfInWhere]
803     ReadOnly = False
804     Required = True
805     OnChange = EmployeesJOB_GRADEChange
806     end
807     object EmployeesJOB_COUNTRY: TIBStringField
808     DisplayWidth = 15
809     FieldKind = fkData
810     FieldName = 'JOB_COUNTRY'
811     Index = 8
812     LookupCache = False
813     ProviderFlags = [pfInUpdate, pfInWhere]
814     ReadOnly = False
815     Required = True
816     Size = 15
817     end
818     object EmployeesSALARY: TIBBCDField
819     DisplayWidth = 18
820     FieldKind = fkData
821     FieldName = 'SALARY'
822     Index = 9
823     LookupCache = False
824     ProviderFlags = [pfInUpdate, pfInWhere]
825     ReadOnly = False
826     Required = True
827     OnGetText = EmployeesSALARYGetText
828     Precision = 18
829     Currency = False
830     MaxValue = 0
831     MinValue = 0
832     Size = 2
833     end
834     object EmployeesFULL_NAME: TIBStringField
835     DisplayWidth = 37
836     FieldKind = fkData
837     FieldName = 'FULL_NAME'
838     Index = 10
839     LookupCache = False
840     ProviderFlags = [pfInUpdate, pfInWhere]
841     ReadOnly = True
842     Required = False
843     Size = 37
844     end
845     object EmployeesDEPT_PATH: TIBStringField
846     DisplayWidth = 256
847     FieldKind = fkData
848     FieldName = 'DEPT_PATH'
849     Index = 11
850     LookupCache = False
851     ProviderFlags = [pfInUpdate, pfInWhere]
852     ReadOnly = False
853     Required = True
854     Size = 256
855     end
856     object EmployeesDEPT_KEY_PATH: TIBStringField
857     DisplayWidth = 64
858     FieldKind = fkData
859     FieldName = 'DEPT_KEY_PATH'
860     Index = 12
861     LookupCache = False
862     ProviderFlags = [pfInUpdate, pfInWhere]
863     ReadOnly = False
864     Required = True
865     Size = 64
866     end
867     object EmployeesPHOTO1: TBlobField
868     DisplayWidth = 10
869     FieldKind = fkData
870     FieldName = 'PHOTO'
871     Index = 13
872     LookupCache = False
873     ProviderFlags = [pfInUpdate, pfInWhere]
874     ReadOnly = False
875     Required = False
876     end
877     end
878     object Countries: TIBQuery
879 tony 45 AllowAutoActivateTransaction = False
880 tony 37 Database = IBDatabase1
881     Transaction = IBTransaction1
882     BeforeOpen = CountriesBeforeOpen
883     BufferChunks = 1000
884     CachedUpdates = False
885 tony 263 EnableStatistics = False
886 tony 37 GenerateParamNames = False
887     GeneratorField.ApplyOnEvent = gaeOnNewRecord
888 tony 263 MasterDetailDelay = 0
889 tony 37 SQL.Strings = (
890     'Select A.COUNTRY, A.CURRENCY From COUNTRY A'
891     'JOIN JOB J On J.JOB_COUNTRY = A.COUNTRY'
892     'Where J.JOB_CODE = :JOB_CODE and J.JOB_GRADE = :JOB_GRADE'
893     'Order by 1'
894     )
895     Params = <
896     item
897     DataType = ftUnknown
898     Name = 'JOB_CODE'
899     ParamType = ptInput
900     end
901     item
902     DataType = ftUnknown
903     Name = 'JOB_GRADE'
904     ParamType = ptInput
905     end>
906     DataSetCloseAction = dcDiscardChanges
907     left = 872
908     top = 296
909     ParamData = <
910     item
911     DataType = ftUnknown
912     Name = 'JOB_CODE'
913     ParamType = ptInput
914     end
915     item
916     DataType = ftUnknown
917     Name = 'JOB_GRADE'
918     ParamType = ptInput
919     end>
920     end
921     object JobCodeSource: TDataSource
922     DataSet = JobCodes
923     left = 832
924     top = 256
925     end
926     object JobCodes: TIBQuery
927 tony 45 AllowAutoActivateTransaction = False
928 tony 37 Database = IBDatabase1
929     Transaction = IBTransaction1
930     BeforeOpen = JobCodesBeforeOpen
931     BufferChunks = 1000
932     CachedUpdates = False
933 tony 263 EnableStatistics = False
934 tony 37 GenerateParamNames = False
935     GeneratorField.ApplyOnEvent = gaeOnNewRecord
936 tony 263 MasterDetailDelay = 0
937 tony 37 SQL.Strings = (
938     'Select A.JOB_CODE, A.JOB_TITLE From JOB A'
939     'Where JOB_COUNTRY = :JOB_COUNTRY and JOB_GRADE = :JOB_GRADE'
940     'Order by Upper(JOB_TITLE)'
941     )
942     Params = <
943     item
944     DataType = ftUnknown
945     Name = 'JOB_COUNTRY'
946     ParamType = ptInput
947     end
948     item
949     DataType = ftUnknown
950     Name = 'JOB_GRADE'
951     ParamType = ptInput
952     end>
953     DataSetCloseAction = dcDiscardChanges
954     left = 872
955     top = 256
956     ParamData = <
957     item
958     DataType = ftUnknown
959     Name = 'JOB_COUNTRY'
960     ParamType = ptInput
961     end
962     item
963     DataType = ftUnknown
964     Name = 'JOB_GRADE'
965     ParamType = ptInput
966     end>
967     end
968     object Depts: TIBQuery
969 tony 45 AllowAutoActivateTransaction = False
970 tony 37 Database = IBDatabase1
971     Transaction = IBTransaction1
972     BufferChunks = 1000
973     CachedUpdates = False
974 tony 263 EnableStatistics = False
975 tony 37 GenerateParamNames = False
976     GeneratorField.ApplyOnEvent = gaeOnNewRecord
977 tony 263 MasterDetailDelay = 0
978 tony 37 SQL.Strings = (
979     'Select A.DEPT_NO, A.DEPARTMENT From DEPARTMENT A'
980     ''
981     'Order by Upper(Department)'
982     )
983     Params = <>
984     DataSetCloseAction = dcDiscardChanges
985     left = 872
986     top = 208
987     end
988     object DeptsSource: TDataSource
989     DataSet = Depts
990     left = 832
991     top = 208
992     end
993     object JobGradeChangeTimer: TTimer
994     Interval = 0
995     OnTimer = JobGradeChangeTimerTimer
996     left = 928
997     top = 175
998     end
999     object JobCodeChangeTimer: TTimer
1000     Interval = 0
1001     OnTimer = JobCodeChangeTimerTimer
1002     left = 927
1003     top = 224
1004     end
1005     object IBLocalDBSupport1: TIBLocalDBSupport
1006     Database = IBDatabase1
1007     DatabaseName = 'employee.fdb'
1008     EmptyDBArchive = 'employee.gbk'
1009     Options = [iblAutoUpgrade, iblAllowDowngrade]
1010     RequiredVersionNo = 2
1011     UpgradeConfFile = 'upgrade.conf'
1012     VendorName = 'MWA Software'
1013     OnGetDBVersionNo = IBLocalDBSupport1GetDBVersionNo
1014     left = 937
1015     top = 264
1016     end
1017     object MainMenu1: TMainMenu
1018     left = 937
1019     top = 318
1020     object MenuItem1: TMenuItem
1021     Caption = 'File'
1022     object MenuItem2: TMenuItem
1023     Action = NewDatabase
1024     end
1025     object MenuItem3: TMenuItem
1026     Caption = '-'
1027     end
1028     object MenuItem4: TMenuItem
1029     Action = SaveDatabase
1030     end
1031     object MenuItem5: TMenuItem
1032     Action = RestoreDatabase
1033     end
1034     object MenuItem6: TMenuItem
1035     Caption = '-'
1036     end
1037     object MenuItem7: TMenuItem
1038     Action = Quit
1039     end
1040     end
1041     end
1042     object CheckVersionTablePresent: TIBSQL
1043     Database = IBDatabase1
1044     GenerateParamNames = False
1045     UniqueParamNames = False
1046     ParamCheck = True
1047     SQL.Strings = (
1048     'Select * From RDB$RELATIONS Where RDB$RELATION_NAME = ''DBVERSIONINFO'';'
1049     )
1050     Transaction = IBTransaction1
1051     left = 937
1052     top = 358
1053     end
1054     object GetDBVersionNoQuery: TIBSQL
1055     Database = IBDatabase1
1056     GenerateParamNames = False
1057     UniqueParamNames = False
1058     ParamCheck = True
1059     SQL.Strings = (
1060     'Select VersionNo From DBVersionInfo'
1061     )
1062     Transaction = IBTransaction1
1063     left = 936
1064     top = 399
1065     end
1066     end