ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/examples/DBAdmin/DataModule.lfm
Revision: 272
Committed: Mon Feb 4 13:34:37 2019 UTC (5 years, 2 months ago) by tony
File size: 51539 byte(s)
Log Message:
Fixes merged

File Contents

# User Rev Content
1 tony 272 object DBDataModule: TDBDataModule
2 tony 158 OldCreateOrder = False
3     Height = 552
4 tony 272 HorizontalOffset = 767
5     VerticalOffset = 395
6 tony 158 Width = 730
7     object IBDatabase1: TIBDatabase
8 tony 231 Connected = False
9 tony 158 AfterConnect = IBDatabase1AfterConnect
10     AfterDisconnect = IBDatabase1AfterDisconnect
11     BeforeDisconnect = IBDatabase1BeforeDisconnect
12     OnLogin = IBDatabase1Login
13     CreateIfNotExists = False
14     AllowStreamedConnected = False
15     DatabaseName = 'employee'
16     Params.Strings = (
17     'lc_ctype=UTF8'
18     'user_name=SYSDBA'
19     'sql_role_name=RDB$ADMIN'
20     )
21     DefaultTransaction = CurrentTransaction
22     IdleTimer = 0
23     TraceFlags = []
24     UseDefaultSystemCodePage = False
25     left = 40
26     top = 24
27     end
28     object CurrentTransaction: TIBTransaction
29     Active = False
30     DefaultDatabase = IBDatabase1
31     Params.Strings = (
32     'read_committed'
33     'rec_version'
34     'nowait'
35     )
36     AfterTransactionEnd = CurrentTransactionAfterTransactionEnd
37     left = 168
38     top = 24
39     end
40     object ExecDDL: TIBSQL
41     Database = IBDatabase1
42 tony 272 CaseSensitiveParameterNames = False
43 tony 158 GenerateParamNames = False
44     UniqueParamNames = False
45     ParamCheck = True
46     SQL.Strings = (
47     ''
48     )
49     Transaction = CurrentTransaction
50     left = 152
51     top = 208
52     end
53     object DatabaseQuery: TIBQuery
54     AllowAutoActivateTransaction = False
55     Database = IBDatabase1
56     Transaction = CurrentTransaction
57     AfterOpen = DatabaseQueryAfterOpen
58     BeforeClose = DatabaseQueryBeforeClose
59     BufferChunks = 1000
60     CachedUpdates = False
61 tony 272 CaseSensitiveParameterNames = False
62 tony 210 EnableStatistics = False
63 tony 158 GenerateParamNames = False
64     GeneratorField.ApplyOnEvent = gaeOnNewRecord
65 tony 210 MasterDetailDelay = 0
66 tony 158 SQL.Strings = (
67     'SELECT * FROM RDB$DATABASE, MON$DATABASE'
68     )
69     Params = <>
70     DataSetCloseAction = dcSaveChanges
71     left = 288
72     top = 24
73 tony 272 object DatabaseQueryRDBDESCRIPTION: TIBMemoField
74     FieldKind = fkData
75     FieldName = 'RDB$DESCRIPTION'
76     Index = 0
77     LookupCache = False
78     ProviderFlags = [pfInUpdate, pfInWhere]
79     ReadOnly = False
80     Required = False
81     BlobType = ftMemo
82     Size = 8
83     Transliterate = False
84     DisplayTextAsClassName = False
85     end
86     object DatabaseQueryRDBRELATION_ID: TIBSmallintField
87     FieldKind = fkData
88     FieldName = 'RDB$RELATION_ID'
89     Index = 1
90     LookupCache = False
91     ProviderFlags = [pfInUpdate, pfInWhere]
92     ReadOnly = False
93     Required = False
94     end
95     object DatabaseQueryRDBSECURITY_CLASS: TIBStringField
96     FieldKind = fkData
97     FieldName = 'RDB$SECURITY_CLASS'
98     Index = 2
99     LookupCache = False
100     ProviderFlags = [pfInUpdate, pfInWhere]
101     ReadOnly = False
102     Required = False
103     Size = 31
104     end
105     object DatabaseQueryRDBCHARACTER_SET_NAME: TIBStringField
106     FieldKind = fkData
107     FieldName = 'RDB$CHARACTER_SET_NAME'
108     Index = 3
109     LookupCache = False
110     ProviderFlags = [pfInUpdate, pfInWhere]
111     ReadOnly = False
112     Required = False
113     Size = 31
114     end
115     object DatabaseQueryRDBLINGER: TIBIntegerField
116     FieldKind = fkData
117     FieldName = 'RDB$LINGER'
118     Index = 4
119     LookupCache = False
120     ProviderFlags = [pfInUpdate, pfInWhere]
121     ReadOnly = False
122     Required = False
123     end
124     object DatabaseQueryMONDATABASE_NAME: TIBStringField
125     FieldKind = fkData
126     FieldName = 'MON$DATABASE_NAME'
127     Index = 5
128     LookupCache = False
129     ProviderFlags = [pfInUpdate, pfInWhere]
130     ReadOnly = False
131     Required = False
132     Size = 255
133     end
134     object DatabaseQueryMONPAGE_SIZE: TIBSmallintField
135     FieldKind = fkData
136     FieldName = 'MON$PAGE_SIZE'
137     Index = 6
138     LookupCache = False
139     ProviderFlags = [pfInUpdate, pfInWhere]
140     ReadOnly = False
141     Required = False
142     end
143     object DatabaseQueryMONODS_MAJOR: TIBSmallintField
144     FieldKind = fkData
145     FieldName = 'MON$ODS_MAJOR'
146     Index = 7
147     LookupCache = False
148     ProviderFlags = [pfInUpdate, pfInWhere]
149     ReadOnly = False
150     Required = False
151     end
152     object DatabaseQueryMONODS_MINOR: TIBSmallintField
153     FieldKind = fkData
154     FieldName = 'MON$ODS_MINOR'
155     Index = 8
156     LookupCache = False
157     ProviderFlags = [pfInUpdate, pfInWhere]
158     ReadOnly = False
159     Required = False
160     end
161     object DatabaseQueryMONOLDEST_TRANSACTION: TIBLargeIntField
162     FieldKind = fkData
163     FieldName = 'MON$OLDEST_TRANSACTION'
164     Index = 9
165     LookupCache = False
166     ProviderFlags = [pfInUpdate, pfInWhere]
167     ReadOnly = False
168     Required = False
169     end
170     object DatabaseQueryMONOLDEST_ACTIVE: TIBLargeIntField
171     FieldKind = fkData
172     FieldName = 'MON$OLDEST_ACTIVE'
173     Index = 10
174     LookupCache = False
175     ProviderFlags = [pfInUpdate, pfInWhere]
176     ReadOnly = False
177     Required = False
178     end
179     object DatabaseQueryMONOLDEST_SNAPSHOT: TIBLargeIntField
180     FieldKind = fkData
181     FieldName = 'MON$OLDEST_SNAPSHOT'
182     Index = 11
183     LookupCache = False
184     ProviderFlags = [pfInUpdate, pfInWhere]
185     ReadOnly = False
186     Required = False
187     end
188     object DatabaseQueryMONNEXT_TRANSACTION: TIBLargeIntField
189     FieldKind = fkData
190     FieldName = 'MON$NEXT_TRANSACTION'
191     Index = 12
192     LookupCache = False
193     ProviderFlags = [pfInUpdate, pfInWhere]
194     ReadOnly = False
195     Required = False
196     end
197     object DatabaseQueryMONPAGE_BUFFERS: TIBIntegerField
198     FieldKind = fkData
199     FieldName = 'MON$PAGE_BUFFERS'
200     Index = 13
201     LookupCache = False
202     ProviderFlags = [pfInUpdate, pfInWhere]
203     ReadOnly = False
204     Required = False
205     end
206     object DatabaseQueryMONSQL_DIALECT: TIBSmallintField
207     FieldKind = fkData
208     FieldName = 'MON$SQL_DIALECT'
209     Index = 14
210     LookupCache = False
211     ProviderFlags = [pfInUpdate, pfInWhere]
212     ReadOnly = False
213     Required = False
214     end
215     object DatabaseQueryMONSHUTDOWN_MODE: TIBSmallintField
216     FieldKind = fkData
217     FieldName = 'MON$SHUTDOWN_MODE'
218     Index = 15
219     LookupCache = False
220     ProviderFlags = [pfInUpdate, pfInWhere]
221     ReadOnly = False
222     Required = False
223     end
224     object DatabaseQueryMONSWEEP_INTERVAL: TIBIntegerField
225     FieldKind = fkData
226     FieldName = 'MON$SWEEP_INTERVAL'
227     Index = 16
228     LookupCache = False
229     ProviderFlags = [pfInUpdate, pfInWhere]
230     ReadOnly = False
231     Required = False
232     end
233     object DatabaseQueryMONREAD_ONLY: TIBSmallintField
234     FieldKind = fkData
235     FieldName = 'MON$READ_ONLY'
236     Index = 17
237     LookupCache = False
238     ProviderFlags = [pfInUpdate, pfInWhere]
239     ReadOnly = False
240     Required = False
241     end
242     object DatabaseQueryMONFORCED_WRITES: TIBSmallintField
243     FieldKind = fkData
244     FieldName = 'MON$FORCED_WRITES'
245     Index = 18
246     LookupCache = False
247     ProviderFlags = [pfInUpdate, pfInWhere]
248     ReadOnly = False
249     Required = False
250     end
251     object DatabaseQueryMONRESERVE_SPACE: TIBSmallintField
252     FieldKind = fkData
253     FieldName = 'MON$RESERVE_SPACE'
254     Index = 19
255     LookupCache = False
256     ProviderFlags = [pfInUpdate, pfInWhere]
257     ReadOnly = False
258     Required = False
259     end
260     object DatabaseQueryMONCREATION_DATE: TDateTimeField
261     FieldKind = fkData
262     FieldName = 'MON$CREATION_DATE'
263     Index = 20
264     LookupCache = False
265     ProviderFlags = [pfInUpdate, pfInWhere]
266     ReadOnly = False
267     Required = False
268     OnGetText = DatabaseQueryMONCREATION_DATEGetText
269     end
270     object DatabaseQueryMONPAGES: TIBLargeIntField
271     FieldKind = fkData
272     FieldName = 'MON$PAGES'
273     Index = 21
274     LookupCache = False
275     ProviderFlags = [pfInUpdate, pfInWhere]
276     ReadOnly = False
277     Required = False
278     end
279     object DatabaseQueryMONSTAT_ID: TIBIntegerField
280     FieldKind = fkData
281     FieldName = 'MON$STAT_ID'
282     Index = 22
283     LookupCache = False
284     ProviderFlags = [pfInUpdate, pfInWhere]
285     ReadOnly = False
286     Required = False
287     end
288     object DatabaseQueryMONBACKUP_STATE: TIBSmallintField
289     FieldKind = fkData
290     FieldName = 'MON$BACKUP_STATE'
291     Index = 23
292     LookupCache = False
293     ProviderFlags = [pfInUpdate, pfInWhere]
294     ReadOnly = False
295     Required = False
296     end
297     object DatabaseQueryMONCRYPT_PAGE: TIBLargeIntField
298     FieldKind = fkData
299     FieldName = 'MON$CRYPT_PAGE'
300     Index = 24
301     LookupCache = False
302     ProviderFlags = [pfInUpdate, pfInWhere]
303     ReadOnly = False
304     Required = False
305     end
306     object DatabaseQueryMONOWNER: TIBStringField
307     FieldKind = fkData
308     FieldName = 'MON$OWNER'
309     Index = 25
310     LookupCache = False
311     ProviderFlags = [pfInUpdate, pfInWhere]
312     ReadOnly = False
313     Required = False
314     Size = 31
315     end
316     object DatabaseQueryMONSEC_DATABASE: TIBStringField
317     FieldKind = fkData
318     FieldName = 'MON$SEC_DATABASE'
319     Index = 26
320     LookupCache = False
321     ProviderFlags = [pfInUpdate, pfInWhere]
322     ReadOnly = False
323     Required = True
324     Size = 7
325     end
326 tony 158 end
327     object DBCharSet: TIBQuery
328     AllowAutoActivateTransaction = False
329     Database = IBDatabase1
330     Transaction = CurrentTransaction
331     AfterClose = DBCharSetAfterClose
332     BeforeOpen = DBCharSetBeforeOpen
333     AutoCommit = acCommitRetaining
334     BufferChunks = 1000
335     CachedUpdates = False
336 tony 272 CaseSensitiveParameterNames = False
337 tony 210 EnableStatistics = False
338 tony 158 GenerateParamNames = False
339     GeneratorField.ApplyOnEvent = gaeOnNewRecord
340 tony 210 MasterDetailDelay = 0
341 tony 158 SQL.Strings = (
342     'Select Trim(A.RDB$CHARACTER_SET_NAME) as RDB$CHARACTER_SET_NAME'
343     ' From RDB$DATABASE A'
344     )
345     Params = <>
346     UpdateObject = UpdateCharSet
347     DataSetCloseAction = dcSaveChanges
348     left = 424
349     top = 32
350     end
351     object ShadowFiles: TIBQuery
352     AllowAutoActivateTransaction = False
353     Database = IBDatabase1
354     Transaction = CurrentTransaction
355     OnCalcFields = ShadowFilesCalcFields
356     BufferChunks = 1000
357     CachedUpdates = False
358 tony 272 CaseSensitiveParameterNames = False
359 tony 210 EnableStatistics = False
360 tony 158 GenerateParamNames = False
361     GeneratorField.ApplyOnEvent = gaeOnNewRecord
362 tony 210 MasterDetailDelay = 0
363 tony 158 SQL.Strings = (
364     'Select * From RDB$Files Where RDB$Shadow_Number <> 0 '
365     'Order by RDB$Shadow_Number, RDB$FILE_SEQUENCE'
366     )
367     Params = <>
368     DataSetCloseAction = dcDiscardChanges
369     left = 32
370     top = 208
371     object ShadowFilesRDBFILE_NAME: TIBStringField
372     FieldKind = fkData
373     FieldName = 'RDB$FILE_NAME'
374     Index = 0
375     LookupCache = False
376     ProviderFlags = [pfInUpdate, pfInWhere]
377     ReadOnly = False
378     Required = False
379     Size = 253
380     end
381     object ShadowFilesRDBFILE_SEQUENCE: TSmallintField
382     FieldKind = fkData
383     FieldName = 'RDB$FILE_SEQUENCE'
384     Index = 1
385     LookupCache = False
386     Origin = 'RDB$FILES.RDB$FILE_SEQUENCE'
387     ProviderFlags = [pfInUpdate, pfInWhere]
388     ReadOnly = False
389     Required = False
390     end
391     object ShadowFilesRDBFILE_START: TIntegerField
392     FieldKind = fkData
393     FieldName = 'RDB$FILE_START'
394     Index = 2
395     LookupCache = False
396     Origin = 'RDB$FILES.RDB$FILE_START'
397     ProviderFlags = [pfInUpdate, pfInWhere]
398     ReadOnly = False
399     Required = False
400     end
401     object ShadowFilesRDBFILE_LENGTH: TIntegerField
402     FieldKind = fkData
403     FieldName = 'RDB$FILE_LENGTH'
404     Index = 3
405     LookupCache = False
406     Origin = 'RDB$FILES.RDB$FILE_LENGTH'
407     ProviderFlags = [pfInUpdate, pfInWhere]
408     ReadOnly = False
409     Required = False
410     end
411     object ShadowFilesRDBFILE_FLAGS: TSmallintField
412     FieldKind = fkData
413     FieldName = 'RDB$FILE_FLAGS'
414     Index = 4
415     LookupCache = False
416     Origin = 'RDB$FILES.RDB$FILE_FLAGS'
417     ProviderFlags = [pfInUpdate, pfInWhere]
418     ReadOnly = False
419     Required = False
420     end
421     object ShadowFilesRDBSHADOW_NUMBER: TSmallintField
422     FieldKind = fkData
423     FieldName = 'RDB$SHADOW_NUMBER'
424     Index = 5
425     LookupCache = False
426     Origin = 'RDB$FILES.RDB$SHADOW_NUMBER'
427     ProviderFlags = [pfInUpdate, pfInWhere]
428     ReadOnly = False
429     Required = False
430     end
431     object ShadowFilesFileMode: TStringField
432     FieldKind = fkCalculated
433     FieldName = 'FileMode'
434     Index = 6
435     LookupCache = False
436     ProviderFlags = [pfInUpdate, pfInWhere]
437     ReadOnly = False
438     Required = False
439     end
440     end
441     object SecGlobalAuth: TIBQuery
442     AllowAutoActivateTransaction = False
443     Database = IBDatabase1
444     Transaction = CurrentTransaction
445     BufferChunks = 1000
446     CachedUpdates = False
447 tony 272 CaseSensitiveParameterNames = False
448 tony 210 EnableStatistics = False
449 tony 158 GenerateParamNames = False
450     GeneratorField.ApplyOnEvent = gaeOnNewRecord
451 tony 210 MasterDetailDelay = 0
452 tony 158 SQL.Strings = (
453     'Select count(*) as Mappings'
454     'From SEC$GLOBAL_AUTH_MAPPING A'
455     'Where SEC$MAP_NAME = ''AutoAdminImplementationMapping'''
456     )
457     Params = <>
458     DataSetCloseAction = dcDiscardChanges
459     left = 288
460     top = 112
461     end
462     object CharSetLookup: TIBQuery
463     AllowAutoActivateTransaction = False
464     Database = IBDatabase1
465     Transaction = CurrentTransaction
466     BufferChunks = 1000
467     CachedUpdates = False
468 tony 272 CaseSensitiveParameterNames = False
469 tony 210 EnableStatistics = False
470 tony 158 GenerateParamNames = False
471     GeneratorField.ApplyOnEvent = gaeOnNewRecord
472 tony 210 MasterDetailDelay = 0
473 tony 158 SQL.Strings = (
474     'Select trim(A.RDB$CHARACTER_SET_NAME) as RDB$CHARACTER_SET_NAME'
475     ' From'
476     'RDB$CHARACTER_SETS A order by 1'
477     ''
478     )
479     Params = <>
480     DataSetCloseAction = dcDiscardChanges
481     left = 160
482     top = 104
483     end
484     object DBSecFiles: TIBQuery
485     AllowAutoActivateTransaction = False
486     Database = IBDatabase1
487     Transaction = CurrentTransaction
488     BufferChunks = 1000
489     CachedUpdates = False
490 tony 272 CaseSensitiveParameterNames = False
491 tony 210 EnableStatistics = False
492 tony 158 GenerateParamNames = False
493     GeneratorField.ApplyOnEvent = gaeOnNewRecord
494 tony 210 MasterDetailDelay = 0
495 tony 158 SQL.Strings = (
496     'Select * From RDB$Files Where RDB$Shadow_Number is null or RDB$Shadow_Number = 0 '
497     'Order by RDB$FILE_SEQUENCE'
498     )
499     Params = <>
500     DataSetCloseAction = dcDiscardChanges
501     left = 32
502     top = 104
503     end
504     object UpdateCharSet: TIBUpdate
505     RefreshSQL.Strings = (
506     'Select Trim(A.RDB$CHARACTER_SET_NAME) as RDB$CHARACTER_SET_NAME'
507     ' From RDB$DATABASE A'
508     )
509     OnApplyUpdates = UpdateCharSetApplyUpdates
510     left = 424
511     top = 104
512     end
513     object IBDatabaseInfo: TIBDatabaseInfo
514     Database = IBDatabase1
515     left = 280
516     top = 200
517     end
518     object AttmtQuery: TIBQuery
519     AllowAutoActivateTransaction = False
520     Database = IBDatabase1
521     Transaction = CurrentTransaction
522     BufferChunks = 1000
523     CachedUpdates = False
524 tony 272 CaseSensitiveParameterNames = False
525 tony 210 EnableStatistics = False
526 tony 158 GenerateParamNames = False
527     GeneratorField.ApplyOnEvent = gaeOnNewRecord
528 tony 210 MasterDetailDelay = 0
529 tony 158 SQL.Strings = (
530     'Select * from MON$ATTACHMENTS'
531     'Where MON$ATTACHMENT_ID = CURRENT_CONNECTION'
532     )
533     Params = <>
534     DataSetCloseAction = dcDiscardChanges
535     left = 544
536     top = 112
537     end
538     object TableNameLookup: TIBQuery
539     AllowAutoActivateTransaction = False
540     Database = IBDatabase1
541     Transaction = CurrentTransaction
542     BufferChunks = 1000
543     CachedUpdates = False
544 tony 272 CaseSensitiveParameterNames = False
545 tony 210 EnableStatistics = False
546 tony 158 GenerateParamNames = False
547     GeneratorField.ApplyOnEvent = gaeOnNewRecord
548 tony 210 MasterDetailDelay = 0
549 tony 158 SQL.Strings = (
550     'SELECT r.RDB$RELATION_ID,'
551     ' trim(r.RDB$RELATION_NAME) as RDB$RELATION_NAME'
552     'FROM RDB$RELATIONS r'
553     )
554     Params = <>
555     DataSetCloseAction = dcDiscardChanges
556     left = 288
557     top = 283
558     end
559     object UserList: TIBQuery
560     AllowAutoActivateTransaction = False
561     Database = IBDatabase1
562     Transaction = CurrentTransaction
563     AfterInsert = UserListAfterInsert
564     AfterOpen = UserListAfterOpen
565     AfterPost = UserListAfterPost
566     AfterScroll = UserListAfterScroll
567     BeforeClose = UserListBeforeClose
568     BufferChunks = 1000
569     CachedUpdates = False
570 tony 272 CaseSensitiveParameterNames = False
571 tony 210 EnableStatistics = False
572 tony 158 GenerateParamNames = False
573     GeneratorField.ApplyOnEvent = gaeOnNewRecord
574 tony 210 MasterDetailDelay = 0
575 tony 158 SQL.Strings = (
576     'Select A.SEC$DESCRIPTION, A.SEC$PLUGIN, A.SEC$ADMIN,'
577 tony 209 'A.SEC$ACTIVE, Trim(A.SEC$USER_NAME) as SEC$USER_NAME, A.SEC$MIDDLE_NAME,'
578 tony 158 'A.SEC$FIRST_NAME, A.SEC$LAST_NAME,'
579 tony 209 'cast(NULL as VarChar(32)) as SEC$PASSWORD, CURRENT_CONNECTION,'
580 tony 158 'case when Count(B.MON$ATTACHMENT_ID) > 0 then true else false end as LoggedIn,'
581     'case When C.SEC$USER is not null then true else false end as DBCreator'
582     'From SEC$USERS A'
583     'Left Outer Join MON$ATTACHMENTS B'
584     'On A.SEC$USER_NAME = B.MON$USER'
585     'Left Outer Join SEC$DB_CREATORS C on C.SEC$USER = A.SEC$USER_NAME'
586     'Group By A.SEC$DESCRIPTION, A.SEC$PLUGIN, A.SEC$ADMIN,'
587     'A.SEC$ACTIVE, A.SEC$USER_NAME, A.SEC$MIDDLE_NAME,'
588     'A.SEC$FIRST_NAME, A.SEC$LAST_NAME, C.SEC$USER'
589     )
590     Params = <>
591     UpdateObject = UpdateUsers
592     DataSetCloseAction = dcSaveChanges
593     left = 416
594     top = 352
595     object UserListSECPLUGIN: TIBStringField
596     FieldKind = fkData
597     FieldName = 'SEC$PLUGIN'
598     Index = 0
599     LookupCache = False
600     ProviderFlags = [pfInUpdate, pfInWhere]
601     ReadOnly = True
602     Required = False
603     Size = 31
604     end
605     object UserListSECADMIN: TBooleanField
606     FieldKind = fkData
607     FieldName = 'SEC$ADMIN'
608     Index = 1
609     LookupCache = False
610     ProviderFlags = [pfInUpdate, pfInWhere]
611     ReadOnly = False
612     Required = False
613     DisplayValues = 'True;False'
614     end
615     object UserListSECACTIVE: TBooleanField
616     FieldKind = fkData
617     FieldName = 'SEC$ACTIVE'
618     Index = 2
619     LookupCache = False
620     ProviderFlags = [pfInUpdate, pfInWhere]
621     ReadOnly = False
622     Required = False
623     DisplayValues = 'True;False'
624     end
625     object UserListSECMIDDLE_NAME: TIBStringField
626     FieldKind = fkData
627     FieldName = 'SEC$MIDDLE_NAME'
628     Index = 3
629     LookupCache = False
630     ProviderFlags = [pfInUpdate, pfInWhere]
631     ReadOnly = False
632     Required = False
633     Size = 32
634     end
635     object UserListSECFIRST_NAME: TIBStringField
636     FieldKind = fkData
637     FieldName = 'SEC$FIRST_NAME'
638     Index = 4
639     LookupCache = False
640     ProviderFlags = [pfInUpdate, pfInWhere]
641     ReadOnly = False
642     Required = False
643     Size = 32
644     end
645     object UserListSECLAST_NAME: TIBStringField
646     FieldKind = fkData
647     FieldName = 'SEC$LAST_NAME'
648     Index = 5
649     LookupCache = False
650     ProviderFlags = [pfInUpdate, pfInWhere]
651     ReadOnly = False
652     Required = False
653     Size = 32
654     end
655     object UserListLOGGEDIN: TBooleanField
656     FieldKind = fkData
657     FieldName = 'LOGGEDIN'
658 tony 209 Index = 6
659 tony 158 LookupCache = False
660     ProviderFlags = [pfInUpdate, pfInWhere]
661     ReadOnly = False
662     Required = True
663     DisplayValues = 'True;False'
664     end
665     object UserListCURRENT_CONNECTION: TIBLargeIntField
666     FieldKind = fkData
667     FieldName = 'CURRENT_CONNECTION'
668 tony 209 Index = 7
669 tony 158 LookupCache = False
670     ProviderFlags = [pfInUpdate, pfInWhere]
671     ReadOnly = False
672     Required = True
673     end
674     object UserListDBCREATOR: TBooleanField
675     FieldKind = fkData
676     FieldName = 'DBCREATOR'
677 tony 209 Index = 8
678 tony 158 LookupCache = False
679     ProviderFlags = [pfInUpdate, pfInWhere]
680     ReadOnly = False
681     Required = True
682     DisplayValues = 'True;False'
683     end
684     object UserListUSERID: TLongintField
685     FieldKind = fkCalculated
686     FieldName = 'USERID'
687 tony 209 Index = 9
688 tony 158 LookupCache = False
689     ProviderFlags = [pfInUpdate, pfInWhere]
690     ReadOnly = False
691     Required = False
692     end
693     object UserListGROUPID: TLongintField
694     FieldKind = fkCalculated
695     FieldName = 'GROUPID'
696 tony 209 Index = 10
697     LookupCache = False
698     ProviderFlags = [pfInUpdate, pfInWhere]
699     ReadOnly = False
700     Required = False
701     end
702     object UserListSECPASSWORD: TIBStringField
703     FieldKind = fkData
704     FieldName = 'SEC$PASSWORD'
705     Index = 11
706     LookupCache = False
707     ProviderFlags = [pfInUpdate, pfInWhere]
708     ReadOnly = False
709     Required = False
710     Size = 32
711     end
712     object UserListSECUSER_NAME: TIBStringField
713     FieldKind = fkData
714     FieldName = 'SEC$USER_NAME'
715 tony 158 Index = 12
716     LookupCache = False
717     ProviderFlags = [pfInUpdate, pfInWhere]
718     ReadOnly = False
719     Required = False
720 tony 209 Size = 31
721 tony 158 end
722     end
723     object UpdateUsers: TIBUpdate
724     RefreshSQL.Strings = (
725     'Select A.SEC$DESCRIPTION, A.SEC$PLUGIN, A.SEC$ADMIN,'
726 tony 209 'A.SEC$ACTIVE, A.SEC$USER_NAME, A.SEC$MIDDLE_NAME,'
727 tony 158 'A.SEC$FIRST_NAME, A.SEC$LAST_NAME,'
728 tony 209 'cast(NULL as VarChar(32)) as SEC$PASSWORD, CURRENT_CONNECTION,'
729 tony 158 'case when B.MON$ATTACHMENT_ID is not null then true else false end as LoggedIn,'
730     'case When C.SEC$USER is not null then true else false end as DBCreator'
731     'From SEC$USERS A'
732     'Left Outer Join MON$ATTACHMENTS B'
733     'On A.SEC$USER_NAME = B.MON$USER'
734     'Left Outer Join SEC$DB_CREATORS C on C.SEC$USER = A.SEC$USER_NAME'
735 tony 209 'Where A.SEC$USER_NAME = :SEC$USER_NAME'
736 tony 158 )
737     OnApplyUpdates = UpdateUsersApplyUpdates
738     left = 544
739     top = 360
740     end
741     object RoleNameList: TIBQuery
742     AllowAutoActivateTransaction = False
743     Database = IBDatabase1
744     Transaction = CurrentTransaction
745     AutoCommit = acCommitRetaining
746     BufferChunks = 1000
747     CachedUpdates = False
748 tony 272 CaseSensitiveParameterNames = False
749 tony 158 DataSource = UserListSource
750 tony 210 EnableStatistics = False
751 tony 158 GenerateParamNames = False
752     GeneratorField.ApplyOnEvent = gaeOnNewRecord
753 tony 210 MasterDetailDelay = 0
754 tony 158 SQL.Strings = (
755     'SELECT r.RDB$ROLE_NAME, r.RDB$OWNER_NAME, r.RDB$DESCRIPTION, r.RDB$SYSTEM_FLAG, '
756 tony 209 'P.RDB$USER,RDB$PRIVILEGE, cast(:SEC$USER_NAME as VARCHAR(32)) as SEC$USER_NAME,'
757 tony 158 'Case When RDB$PRIVILEGE is null then 0 else 1 End as GRANTED'
758     'FROM RDB$ROLES r'
759     'Left Outer JOIN ('
760     'Select RDB$RELATION_NAME, RDB$PRIVILEGE, RDB$USER From RDB$USER_PRIVILEGES '
761 tony 209 'Where RDB$USER = :SEC$USER_NAME and RDB$PRIVILEGE = ''M'''
762 tony 158 ') P On P.RDB$RELATION_NAME = r.RDB$ROLE_NAME '
763     ''
764     )
765     Params = <
766     item
767     DataType = ftUnknown
768 tony 209 Name = 'SEC$USER_NAME'
769 tony 158 ParamType = ptInput
770     end>
771     UpdateObject = UpdateUserRoles
772     DataSetCloseAction = dcSaveChanges
773     left = 424
774     top = 280
775     ParamData = <
776     item
777     DataType = ftUnknown
778 tony 209 Name = 'SEC$USER_NAME'
779 tony 158 ParamType = ptInput
780     end>
781     end
782     object UpdateUserRoles: TIBUpdate
783     RefreshSQL.Strings = (
784     'SELECT r.RDB$ROLE_NAME, r.RDB$OWNER_NAME, r.RDB$DESCRIPTION, r.RDB$SYSTEM_FLAG,'
785 tony 209 'P.RDB$USER,RDB$PRIVILEGE, cast(:SEC$USER_NAME as VARCHAR(32)) as SEC$USER_NAME,'
786 tony 158 'Case When RDB$PRIVILEGE is null then 0 else 1 End as GRANTED'
787     'FROM RDB$ROLES r'
788     'Left Outer JOIN ('
789     'Select RDB$RELATION_NAME, RDB$PRIVILEGE, RDB$USER From RDB$USER_PRIVILEGES'
790 tony 209 'Where RDB$USER = :SEC$USER_NAME and RDB$PRIVILEGE = ''M'''
791 tony 158 ') P On P.RDB$RELATION_NAME = r.RDB$ROLE_NAME'
792     'Where r.RDB$ROLE_NAME = :RDB$ROLE_NAME'
793     )
794     OnApplyUpdates = UpdateUserRolesApplyUpdates
795     left = 544
796     top = 288
797     end
798     object ApplicationProperties1: TApplicationProperties
799     OnException = ApplicationProperties1Exception
800     left = 528
801     top = 32
802     end
803     object UserTags: TIBQuery
804     AllowAutoActivateTransaction = False
805     Database = IBDatabase1
806     Transaction = CurrentTransaction
807     AfterInsert = UserTagsAfterInsert
808     BufferChunks = 1000
809     CachedUpdates = False
810 tony 272 CaseSensitiveParameterNames = False
811 tony 158 DataSource = UserListSource
812 tony 210 EnableStatistics = False
813 tony 158 GenerateParamNames = False
814     GeneratorField.ApplyOnEvent = gaeOnNewRecord
815 tony 210 MasterDetailDelay = 0
816 tony 158 SQL.Strings = (
817     'Select a.SEC$USER_NAME, A.SEC$KEY, A.SEC$VALUE'
818     'From'
819     'SEC$USER_ATTRIBUTES A'
820 tony 209 'Where SEC$USER_NAME = :SEC$USER_NAME'
821 tony 158 )
822     Params = <
823     item
824     DataType = ftUnknown
825 tony 209 Name = 'SEC$USER_NAME'
826 tony 158 ParamType = ptInput
827     end>
828     UpdateObject = TagsUpdate
829     DataSetCloseAction = dcSaveChanges
830     left = 424
831     top = 192
832     ParamData = <
833     item
834     DataType = ftUnknown
835 tony 209 Name = 'SEC$USER_NAME'
836 tony 158 ParamType = ptInput
837     end>
838     end
839     object TagsUpdate: TIBUpdate
840     RefreshSQL.Strings = (
841     'Select A.SEC$USER_NAME, A.SEC$KEY, A.SEC$VALUE From '
842     'SEC$USER_ATTRIBUTES A'
843     'Where SEC$USER_NAME = :SEC$USER_NAME'
844     ' and A.SEC$KEY = :SEC$KEY'
845     )
846     OnApplyUpdates = TagsUpdateApplyUpdates
847     left = 536
848     top = 200
849     end
850     object UserListSource: TDataSource
851     DataSet = UserList
852     left = 304
853     top = 360
854     end
855     object Attachments: TIBQuery
856     AllowAutoActivateTransaction = False
857     Database = IBDatabase1
858     Transaction = CurrentTransaction
859     AfterDelete = AttachmentsAfterDelete
860     AfterOpen = AttachmentsAfterOpen
861     BeforeOpen = AttachmentsBeforeOpen
862     BufferChunks = 1000
863     CachedUpdates = False
864 tony 272 CaseSensitiveParameterNames = False
865 tony 210 EnableStatistics = False
866 tony 158 GenerateParamNames = False
867     GeneratorField.ApplyOnEvent = gaeOnNewRecord
868 tony 210 MasterDetailDelay = 0
869 tony 158 SQL.Strings = (
870     'SELECT *'
871     'FROM MON$ATTACHMENTS r'
872     'JOIN RDB$CHARACTER_SETS S On S.RDB$CHARACTER_SET_ID = r.MON$CHARACTER_SET_ID'
873     ''
874     )
875     Params = <>
876     UpdateObject = AttUpdate
877     DataSetCloseAction = dcDiscardChanges
878     left = 280
879     top = 433
880     object AttachmentsMONATTACHMENT_ID: TIBLargeIntField
881     FieldKind = fkData
882     FieldName = 'MON$ATTACHMENT_ID'
883     Index = 0
884     LookupCache = False
885     ProviderFlags = [pfInUpdate, pfInWhere]
886     ReadOnly = False
887     Required = False
888     end
889     object AttachmentsMONSERVER_PID: TIBIntegerField
890     FieldKind = fkData
891     FieldName = 'MON$SERVER_PID'
892     Index = 1
893     LookupCache = False
894     ProviderFlags = [pfInUpdate, pfInWhere]
895     ReadOnly = False
896     Required = False
897     end
898     object AttachmentsMONSTATE: TIBSmallintField
899     FieldKind = fkData
900     FieldName = 'MON$STATE'
901     Index = 2
902     LookupCache = False
903     ProviderFlags = [pfInUpdate, pfInWhere]
904     ReadOnly = False
905     Required = False
906     end
907     object AttachmentsMONATTACHMENT_NAME: TIBStringField
908     FieldKind = fkData
909     FieldName = 'MON$ATTACHMENT_NAME'
910     Index = 3
911     LookupCache = False
912     ProviderFlags = [pfInUpdate, pfInWhere]
913     ReadOnly = False
914     Required = False
915     Size = 255
916     end
917     object AttachmentsMONUSER: TIBStringField
918     FieldKind = fkData
919     FieldName = 'MON$USER'
920     Index = 4
921     LookupCache = False
922     ProviderFlags = [pfInUpdate, pfInWhere]
923     ReadOnly = False
924     Required = False
925     Size = 31
926     end
927     object AttachmentsMONROLE: TIBStringField
928     FieldKind = fkData
929     FieldName = 'MON$ROLE'
930     Index = 5
931     LookupCache = False
932     ProviderFlags = [pfInUpdate, pfInWhere]
933     ReadOnly = False
934     Required = False
935     Size = 31
936     end
937     object AttachmentsMONREMOTE_PROTOCOL: TIBStringField
938     FieldKind = fkData
939     FieldName = 'MON$REMOTE_PROTOCOL'
940     Index = 6
941     LookupCache = False
942     ProviderFlags = [pfInUpdate, pfInWhere]
943     ReadOnly = False
944     Required = False
945     Size = 10
946     end
947     object AttachmentsMONREMOTE_ADDRESS: TIBStringField
948     FieldKind = fkData
949     FieldName = 'MON$REMOTE_ADDRESS'
950     Index = 7
951     LookupCache = False
952     ProviderFlags = [pfInUpdate, pfInWhere]
953     ReadOnly = False
954     Required = False
955     Size = 255
956     end
957     object AttachmentsMONREMOTE_PID: TIBIntegerField
958     FieldKind = fkData
959     FieldName = 'MON$REMOTE_PID'
960     Index = 8
961     LookupCache = False
962     ProviderFlags = [pfInUpdate, pfInWhere]
963     ReadOnly = False
964     Required = False
965     end
966     object AttachmentsMONCHARACTER_SET_ID: TIBSmallintField
967     FieldKind = fkData
968     FieldName = 'MON$CHARACTER_SET_ID'
969     Index = 9
970     LookupCache = False
971     ProviderFlags = [pfInUpdate, pfInWhere]
972     ReadOnly = False
973     Required = False
974     end
975     object AttachmentsMONTIMESTAMP: TDateTimeField
976     FieldKind = fkData
977     FieldName = 'MON$TIMESTAMP'
978     Index = 10
979     LookupCache = False
980     ProviderFlags = [pfInUpdate, pfInWhere]
981     ReadOnly = False
982     Required = False
983     end
984     object AttachmentsMONGARBAGE_COLLECTION: TIBSmallintField
985     FieldKind = fkData
986     FieldName = 'MON$GARBAGE_COLLECTION'
987     Index = 11
988     LookupCache = False
989     ProviderFlags = [pfInUpdate, pfInWhere]
990     ReadOnly = False
991     Required = False
992     end
993     object AttachmentsMONREMOTE_PROCESS: TIBStringField
994     FieldKind = fkData
995     FieldName = 'MON$REMOTE_PROCESS'
996     Index = 12
997     LookupCache = False
998     ProviderFlags = [pfInUpdate, pfInWhere]
999     ReadOnly = False
1000     Required = False
1001     Size = 255
1002     end
1003     object AttachmentsMONSTAT_ID: TIBIntegerField
1004     FieldKind = fkData
1005     FieldName = 'MON$STAT_ID'
1006     Index = 13
1007     LookupCache = False
1008     ProviderFlags = [pfInUpdate, pfInWhere]
1009     ReadOnly = False
1010     Required = False
1011     end
1012     object AttachmentsMONCLIENT_VERSION: TIBStringField
1013     FieldKind = fkData
1014     FieldName = 'MON$CLIENT_VERSION'
1015     Index = 14
1016     LookupCache = False
1017     ProviderFlags = [pfInUpdate, pfInWhere]
1018     ReadOnly = False
1019     Required = False
1020     Size = 255
1021     end
1022     object AttachmentsMONREMOTE_VERSION: TIBStringField
1023     FieldKind = fkData
1024     FieldName = 'MON$REMOTE_VERSION'
1025     Index = 15
1026     LookupCache = False
1027     ProviderFlags = [pfInUpdate, pfInWhere]
1028     ReadOnly = False
1029     Required = False
1030     Size = 255
1031     end
1032     object AttachmentsMONREMOTE_HOST: TIBStringField
1033     FieldKind = fkData
1034     FieldName = 'MON$REMOTE_HOST'
1035     Index = 16
1036     LookupCache = False
1037     ProviderFlags = [pfInUpdate, pfInWhere]
1038     ReadOnly = False
1039     Required = False
1040     Size = 255
1041     end
1042     object AttachmentsMONREMOTE_OS_USER: TIBStringField
1043     FieldKind = fkData
1044     FieldName = 'MON$REMOTE_OS_USER'
1045     Index = 17
1046     LookupCache = False
1047     ProviderFlags = [pfInUpdate, pfInWhere]
1048     ReadOnly = False
1049     Required = False
1050     Size = 255
1051     end
1052     object AttachmentsMONAUTH_METHOD: TIBStringField
1053     FieldKind = fkData
1054     FieldName = 'MON$AUTH_METHOD'
1055     Index = 18
1056     LookupCache = False
1057     ProviderFlags = [pfInUpdate, pfInWhere]
1058     ReadOnly = False
1059     Required = False
1060     Size = 255
1061     end
1062     object AttachmentsMONSYSTEM_FLAG: TIBSmallintField
1063     FieldKind = fkData
1064     FieldName = 'MON$SYSTEM_FLAG'
1065     Index = 19
1066     LookupCache = False
1067     ProviderFlags = [pfInUpdate, pfInWhere]
1068     ReadOnly = False
1069     Required = True
1070     end
1071     object AttachmentsRDBCHARACTER_SET_NAME: TIBStringField
1072     FieldKind = fkData
1073     FieldName = 'RDB$CHARACTER_SET_NAME'
1074     Index = 20
1075     LookupCache = False
1076     ProviderFlags = [pfInUpdate, pfInWhere]
1077     ReadOnly = False
1078     Required = False
1079     Size = 31
1080     end
1081     object AttachmentsRDBFORM_OF_USE: TIBStringField
1082     FieldKind = fkData
1083     FieldName = 'RDB$FORM_OF_USE'
1084     Index = 21
1085     LookupCache = False
1086     ProviderFlags = [pfInUpdate, pfInWhere]
1087     ReadOnly = False
1088     Required = False
1089     Size = 31
1090     end
1091     object AttachmentsRDBNUMBER_OF_CHARACTERS: TIBIntegerField
1092     FieldKind = fkData
1093     FieldName = 'RDB$NUMBER_OF_CHARACTERS'
1094     Index = 22
1095     LookupCache = False
1096     ProviderFlags = [pfInUpdate, pfInWhere]
1097     ReadOnly = False
1098     Required = False
1099     end
1100     object AttachmentsRDBDEFAULT_COLLATE_NAME: TIBStringField
1101     FieldKind = fkData
1102     FieldName = 'RDB$DEFAULT_COLLATE_NAME'
1103     Index = 23
1104     LookupCache = False
1105     ProviderFlags = [pfInUpdate, pfInWhere]
1106     ReadOnly = False
1107     Required = False
1108     Size = 31
1109     end
1110     object AttachmentsRDBCHARACTER_SET_ID: TIBSmallintField
1111     FieldKind = fkData
1112     FieldName = 'RDB$CHARACTER_SET_ID'
1113     Index = 24
1114     LookupCache = False
1115     ProviderFlags = [pfInUpdate, pfInWhere]
1116     ReadOnly = False
1117     Required = False
1118     end
1119     object AttachmentsRDBSYSTEM_FLAG: TIBSmallintField
1120     FieldKind = fkData
1121     FieldName = 'RDB$SYSTEM_FLAG'
1122     Index = 25
1123     LookupCache = False
1124     ProviderFlags = [pfInUpdate, pfInWhere]
1125     ReadOnly = False
1126     Required = True
1127     end
1128     object AttachmentsRDBDESCRIPTION: TIBMemoField
1129     FieldKind = fkData
1130     FieldName = 'RDB$DESCRIPTION'
1131     Index = 26
1132     LookupCache = False
1133     ProviderFlags = [pfInUpdate, pfInWhere]
1134     ReadOnly = False
1135     Required = False
1136     BlobType = ftMemo
1137     Size = 8
1138     Transliterate = False
1139     DisplayTextAsClassName = False
1140     end
1141     object AttachmentsRDBFUNCTION_NAME: TIBStringField
1142     FieldKind = fkData
1143     FieldName = 'RDB$FUNCTION_NAME'
1144     Index = 27
1145     LookupCache = False
1146     ProviderFlags = [pfInUpdate, pfInWhere]
1147     ReadOnly = False
1148     Required = False
1149     Size = 31
1150     end
1151     object AttachmentsRDBBYTES_PER_CHARACTER: TIBSmallintField
1152     FieldKind = fkData
1153     FieldName = 'RDB$BYTES_PER_CHARACTER'
1154     Index = 28
1155     LookupCache = False
1156     ProviderFlags = [pfInUpdate, pfInWhere]
1157     ReadOnly = False
1158     Required = False
1159     end
1160     object AttachmentsRDBSECURITY_CLASS: TIBStringField
1161     FieldKind = fkData
1162     FieldName = 'RDB$SECURITY_CLASS'
1163     Index = 29
1164     LookupCache = False
1165     ProviderFlags = [pfInUpdate, pfInWhere]
1166     ReadOnly = False
1167     Required = False
1168     Size = 31
1169     end
1170     object AttachmentsRDBOWNER_NAME: TIBStringField
1171     FieldKind = fkData
1172     FieldName = 'RDB$OWNER_NAME'
1173     Index = 30
1174     LookupCache = False
1175     ProviderFlags = [pfInUpdate, pfInWhere]
1176     ReadOnly = False
1177     Required = False
1178     Size = 31
1179     end
1180     end
1181     object AttUpdate: TIBUpdate
1182     OnApplyUpdates = AttUpdateApplyUpdates
1183     left = 376
1184     top = 432
1185     end
1186     object AdminUserQuery: TIBSQL
1187     Database = IBDatabase1
1188 tony 272 CaseSensitiveParameterNames = False
1189 tony 158 GenerateParamNames = False
1190     UniqueParamNames = False
1191     ParamCheck = True
1192     SQL.Strings = (
1193     'Select A.SEC$ADMIN From SEC$USERS A'
1194     'Where SEC$USER_NAME = CURRENT_USER'
1195     )
1196     Transaction = CurrentTransaction
1197     left = 424
1198     top = 496
1199     end
1200     object DBTables: TIBQuery
1201     AllowAutoActivateTransaction = False
1202     Database = IBDatabase1
1203     Transaction = CurrentTransaction
1204     BufferChunks = 1000
1205     CachedUpdates = False
1206 tony 272 CaseSensitiveParameterNames = False
1207 tony 210 EnableStatistics = False
1208 tony 158 GenerateParamNames = False
1209     GeneratorField.ApplyOnEvent = gaeOnNewRecord
1210 tony 210 MasterDetailDelay = 0
1211 tony 158 SQL.Strings = (
1212     'Select Trim(A.RDB$RELATION_NAME) as RDB$RELATION_NAME, 1 as Selected'
1213     ' From RDB$RELATIONS A'
1214     ' Where RDB$SYSTEM_FLAG = 0'
1215     ' order by 1'
1216     )
1217     Params = <>
1218     UpdateObject = DBTablesUpdate
1219     DataSetCloseAction = dcDiscardChanges
1220     left = 520
1221     top = 488
1222     end
1223     object DBTablesUpdate: TIBUpdate
1224     RefreshSQL.Strings = (
1225     ''
1226     )
1227     OnApplyUpdates = DBTablesUpdateApplyUpdates
1228     left = 592
1229     top = 480
1230     end
1231     object AuthMappings: TIBQuery
1232     AllowAutoActivateTransaction = False
1233     Database = IBDatabase1
1234     Transaction = CurrentTransaction
1235     BufferChunks = 1000
1236     CachedUpdates = False
1237 tony 272 CaseSensitiveParameterNames = False
1238 tony 210 EnableStatistics = False
1239 tony 158 GenerateParamNames = False
1240     GeneratorField.ApplyOnEvent = gaeOnNewRecord
1241 tony 210 MasterDetailDelay = 0
1242 tony 158 SQL.Strings = (
1243     'SELECT r.RDB$DB_KEY, cast(''Local'' as VarChar(6)) as MAPTYPE, r.RDB$MAP_NAME,'
1244     ' Case'
1245     ' When r.RDB$MAP_USING = ''P'' and r.RDB$MAP_PLUGIN is not null then cast (''Plugin '' || r.RDB$MAP_PLUGIN as VarChar(20))'
1246     ' When r.RDB$MAP_USING = ''P'' and r.RDB$MAP_PLUGIN is null then ''Any Plugin'''
1247     ' When r.RDB$MAP_USING = ''S'' then ''Any Plugin Serverwide'''
1248     ' When r.RDB$MAP_USING = ''M'' then ''Mapping'''
1249     ' When r.RDB$MAP_USING = ''*'' then ''*'''
1250     ' else'
1251     ' ''Using '' || r.RDB$MAP_USING || '','' || coalesce(r.RDB$MAP_PLUGIN,'''') End as MAP_USING,'
1252     ' r.RDB$MAP_USING, r.RDB$MAP_PLUGIN,'
1253     ' r.RDB$MAP_DB, r.RDB$MAP_FROM_TYPE, r.RDB$MAP_FROM,'
1254     ' Trim(r.RDB$MAP_FROM_TYPE) || '': '' || Trim(r.RDB$MAP_FROM) as MAP_FROM,'
1255     ' r.RDB$MAP_TO_TYPE,'
1256     ' T.RDB$TYPE_NAME as MAP_TO_TYPE, r.RDB$MAP_TO,'
1257     ' Trim(T.RDB$TYPE_NAME) || '': '' || Trim(r.RDB$MAP_TO) as MAP_TO,'
1258     ' r.RDB$SYSTEM_FLAG, r.RDB$DESCRIPTION'
1259     'FROM RDB$AUTH_MAPPING r'
1260     'JOIN RDB$TYPES T On T.RDB$TYPE = r.RDB$MAP_TO_TYPE and T.RDB$FIELD_NAME = ''RDB$MAP_TO_TYPE'''
1261     'UNION'
1262     'SELECT r.RDB$DB_KEY, ''Global'', r.SEC$MAP_NAME,'
1263     ' Case'
1264     ' When r.SEC$MAP_USING = ''P'' and r.SEC$MAP_PLUGIN is not null then cast (''Plugin '' || r.SEC$MAP_PLUGIN as VarChar(20))'
1265     ' When r.SEC$MAP_USING = ''P'' and r.SEC$MAP_PLUGIN is null then ''Any Plugin'''
1266     ' When r.SEC$MAP_USING = ''S'' then ''Any Plugin Serverwide'''
1267     ' When r.SEC$MAP_USING = ''M'' then ''Mapping'''
1268     ' When r.SEC$MAP_USING = ''*'' then ''*'''
1269     ' else'
1270     ' ''Using '' || r.SEC$MAP_USING || '','' || coalesce(r.SEC$MAP_PLUGIN,'''') End as MAP_USING,'
1271     ' r.SEC$MAP_USING, r.SEC$MAP_PLUGIN,'
1272     ' r.SEC$MAP_DB, r.SEC$MAP_FROM_TYPE, r.SEC$MAP_FROM,'
1273     ' Trim(r.SEC$MAP_FROM_TYPE) || '': '' || Trim(r.SEC$MAP_FROM) as MAP_FROM,'
1274     ' r.SEC$MAP_TO_TYPE,'
1275     ' T.RDB$TYPE_NAME as MAP_TO_TYPE,r.SEC$MAP_TO,'
1276     ' Trim(T.RDB$TYPE_NAME) || '': '' || Trim(r.SEC$MAP_TO) as MAP_TO,'
1277     ' null,null'
1278     'FROM SEC$GLOBAL_AUTH_MAPPING r'
1279     'JOIN RDB$TYPES T On T.RDB$TYPE = r.SEC$MAP_TO_TYPE and T.RDB$FIELD_NAME = ''RDB$MAP_TO_TYPE'''
1280     ''
1281     )
1282     Params = <>
1283     DataSetCloseAction = dcDiscardChanges
1284     left = 657
1285     top = 118
1286     end
1287     object AccessRights: TIBQuery
1288     AllowAutoActivateTransaction = False
1289     Database = IBDatabase1
1290     Transaction = CurrentTransaction
1291     OnCalcFields = AccessRightsCalcFields
1292     BufferChunks = 1000
1293     CachedUpdates = False
1294 tony 272 CaseSensitiveParameterNames = False
1295 tony 210 EnableStatistics = False
1296 tony 158 GenerateParamNames = False
1297     GeneratorField.ApplyOnEvent = gaeOnNewRecord
1298 tony 210 MasterDetailDelay = 0
1299 tony 158 SQL.Strings = (
1300     'with recursive AccessRight as ('
1301     'Select UP.RDB$USER as SUBJECT_NAME,'
1302     ' UP.RDB$USER_TYPE as SUBJECT_TYPE,'
1303     ' UP.RDB$OBJECT_TYPE as OBJECT_TYPE,'
1304     ' UP.RDB$RELATION_NAME as OBJECT_NAME,'
1305     ' T2.RDB$TYPE_NAME as OBJECT_TYPE_NAME,'
1306     ' UP.RDB$GRANTOR as GRANTOR,'
1307     ' UP.RDB$GRANT_OPTION as GRANT_OPTION,'
1308     ' List(Trim(UP.RDB$PRIVILEGE)) as Granted_Privileges,'
1309     ' count (C.RDB$DB_KEY) as ChildCount'
1310     ' From RDB$USER_PRIVILEGES UP'
1311     ' JOIN RDB$TYPES T2 On T2.RDB$TYPE = UP.RDB$OBJECT_TYPE and T2.RDB$FIELD_NAME = ''RDB$OBJECT_TYPE'''
1312     ' Left Outer JOIN RDB$USER_PRIVILEGES C On C.RDB$USER_TYPE = UP.RDB$OBJECT_TYPE and C.RDB$USER = UP.RDB$RELATION_NAME'
1313     ' Where UP.RDB$USER <> ''SYSDBA'''
1314     ' Group BY UP.RDB$USER,UP.RDB$USER_TYPE,UP.RDB$OBJECT_TYPE,'
1315     ' UP.RDB$RELATION_NAME, UP.RDB$GRANTOR, UP.RDB$GRANT_OPTION,'
1316     ' T2.RDB$TYPE_NAME'
1317     ' ),'
1318     ''
1319     ' AccessRights as ('
1320     ' select cast(Trim(SUBJECT_NAME) || SUBJECT_TYPE as Char(33)) as ID,SUBJECT_TYPE, SUBJECT_NAME,'
1321     ' OBJECT_TYPE, OBJECT_NAME, OBJECT_TYPE_NAME, Granted_Privileges,GRANTOR, GRANT_OPTION,'
1322     ' cast(NULL as Char(33) ) as Parent, ChildCount'
1323     ' From AccessRight'
1324     ' UNION all'
1325     ' Select Trim(B.SUBJECT_NAME) || B.SUBJECT_TYPE as ID, B.SUBJECT_TYPE, B.SUBJECT_NAME,'
1326     ' B.OBJECT_TYPE, B.OBJECT_NAME, B.OBJECT_TYPE_NAME, B.Granted_Privileges, B.GRANTOR, B.GRANT_OPTION,'
1327     ' A.ID as Parent,B.ChildCount'
1328     ' From AccessRight B'
1329     ' JOIN AccessRights A On A.OBJECT_TYPE = B.SUBJECT_TYPE and A.OBJECT_NAME = B.SUBJECT_NAME'
1330     ' )'
1331     ''
1332     'Select *'
1333     'From ('
1334     'Select A.ID as ID, Trim(A.SUBJECT_NAME )as SUBJECT_NAME, A.SUBJECT_TYPE as SUBJECT_TYPE,'
1335     ' case When A.Parent is NULL then Trim(T.RDB$TYPE_NAME) || A.SUBJECT_TYPE Else A.Parent End as Parent,'
1336     ' sum(A.ChildCount) as ChildCount'
1337     ' from AccessRights A'
1338     ' JOIN RDB$TYPES T On T.RDB$TYPE = A.SUBJECT_TYPE and RDB$FIELD_NAME = ''RDB$OBJECT_TYPE'''
1339     ' Group By A.ID, A.SUBJECT_NAME, A.SUBJECT_TYPE, A.Parent, T.RDB$TYPE_NAME'
1340     'UNION'
1341     'SELECT Trim(r.RDB$TYPE_NAME) || r.RDB$TYPE as ID, Trim(r.RDB$TYPE_NAME) || ''S'' as SUBJECT_NAME,-r.RDB$TYPE,'
1342     ' NULL,1'
1343     'FROM RDB$TYPES r Where RDB$FIELD_NAME = ''RDB$OBJECT_TYPE'''
1344     'and Exists(Select * from RDB$USER_PRIVILEGES Where RDB$USER_TYPE = r.RDB$TYPE)'
1345     ''
1346     ' )'
1347     ''
1348     )
1349     Params = <>
1350     DataSetCloseAction = dcDiscardChanges
1351     left = 648
1352     top = 264
1353     object AccessRightsID: TIBStringField
1354     FieldKind = fkData
1355     FieldName = 'ID'
1356     Index = 0
1357     LookupCache = False
1358     ProviderFlags = [pfInUpdate, pfInWhere]
1359     ReadOnly = False
1360     Required = False
1361     Size = 37
1362     end
1363     object AccessRightsSUBJECT_NAME: TIBStringField
1364     FieldKind = fkData
1365     FieldName = 'SUBJECT_NAME'
1366     Index = 1
1367     LookupCache = False
1368     ProviderFlags = [pfInUpdate, pfInWhere]
1369     ReadOnly = False
1370     Required = False
1371     Size = 32
1372     end
1373     object AccessRightsSUBJECT_TYPE: TIBSmallintField
1374     FieldKind = fkData
1375     FieldName = 'SUBJECT_TYPE'
1376     Index = 2
1377     LookupCache = False
1378     ProviderFlags = [pfInUpdate, pfInWhere]
1379     ReadOnly = False
1380     Required = False
1381     end
1382     object AccessRightsPARENT: TIBStringField
1383     FieldKind = fkData
1384     FieldName = 'PARENT'
1385     Index = 3
1386     LookupCache = False
1387     ProviderFlags = [pfInUpdate, pfInWhere]
1388     ReadOnly = False
1389     Required = False
1390     Size = 37
1391     end
1392     object AccessRightsCHILDCOUNT: TIBLargeIntField
1393     FieldKind = fkData
1394     FieldName = 'CHILDCOUNT'
1395     Index = 4
1396     LookupCache = False
1397     ProviderFlags = [pfInUpdate, pfInWhere]
1398     ReadOnly = False
1399     Required = False
1400     end
1401     object AccessRightsImageIndex: TLongintField
1402     FieldKind = fkCalculated
1403     FieldName = 'ImageIndex'
1404     Index = 5
1405     LookupCache = False
1406     ProviderFlags = [pfInUpdate, pfInWhere]
1407     ReadOnly = False
1408     Required = False
1409     end
1410     object AccessRightsDisplayName: TStringField
1411     FieldKind = fkCalculated
1412     FieldName = 'DisplayName'
1413     Index = 6
1414     LookupCache = False
1415     ProviderFlags = [pfInUpdate, pfInWhere]
1416     ReadOnly = False
1417     Required = False
1418     Size = 64
1419     end
1420     end
1421     object SubjectAccessRights: TIBQuery
1422     AllowAutoActivateTransaction = False
1423     Database = IBDatabase1
1424     Transaction = CurrentTransaction
1425     BeforeOpen = SubjectAccessRightsBeforeOpen
1426     BufferChunks = 1000
1427     CachedUpdates = False
1428 tony 272 CaseSensitiveParameterNames = False
1429 tony 210 EnableStatistics = False
1430 tony 158 GenerateParamNames = False
1431     GeneratorField.ApplyOnEvent = gaeOnNewRecord
1432 tony 210 MasterDetailDelay = 0
1433 tony 158 SQL.Strings = (
1434     'Select UP.RDB$USER as SUBJECT_NAME,'
1435     ' UP.RDB$USER_TYPE as SUBJECT_TYPE,'
1436     ' T1.RDB$TYPE_NAME as SUBJECT_TYPE_NAME,'
1437     ' UP.RDB$OBJECT_TYPE as OBJECT_TYPE,'
1438     ' case T2.RDB$TYPE_NAME'
1439     ' When ''RELATION'' then ''TABLE'''
1440     ' When ''FIELD'' then ''DOMAIN'''
1441     ' Else T2.RDB$TYPE_NAME End as OBJECT_TYPE_NAME,'
1442     ' UP.RDB$RELATION_NAME as OBJECT_NAME,'
1443     ' List(DISTINCT Trim(RDB$PRIVILEGE)) as Granted_Privileges,'
1444     ' UC.Update_Columns,'
1445     ' RC.Reference_Columns,'
1446     ' UP.RDB$GRANTOR as GrantedBy,'
1447     ' coalesce(UP.RDB$GRANT_OPTION,0) as GRANT_OPTION'
1448     ' From RDB$USER_PRIVILEGES UP'
1449     ' JOIN RDB$TYPES T1 On T1.RDB$TYPE = UP.RDB$USER_TYPE and T1.RDB$FIELD_NAME = ''RDB$OBJECT_TYPE'''
1450     ' JOIN RDB$TYPES T2 On T2.RDB$TYPE = UP.RDB$OBJECT_TYPE and T2.RDB$FIELD_NAME = ''RDB$OBJECT_TYPE'''
1451     ' Left Outer JOIN ('
1452     ' Select RDB$USER, RDB$USER_TYPE, RDB$OBJECT_TYPE, RDB$RELATION_NAME,'
1453     ' List(Trim(RDB$FIELD_NAME)) as Update_Columns'
1454     ' From RDB$USER_PRIVILEGES Where RDB$PRIVILEGE = ''U'''
1455     ' Group By RDB$USER, RDB$USER_TYPE, RDB$OBJECT_TYPE, RDB$RELATION_NAME) UC'
1456     ' On UC.RDB$USER = UP.RDB$USER and UC.RDB$USER_TYPE = UP.RDB$USER_TYPE and'
1457     ' UC.RDB$OBJECT_TYPE = UP.RDB$OBJECT_TYPE and UC.RDB$RELATION_NAME = UP.RDB$RELATION_NAME'
1458     ' Left Outer JOIN ('
1459     ' Select RDB$USER, RDB$USER_TYPE, RDB$OBJECT_TYPE, RDB$RELATION_NAME,'
1460     ' List(Trim(RDB$FIELD_NAME)) as Reference_Columns'
1461     ' From RDB$USER_PRIVILEGES Where RDB$PRIVILEGE = ''R'''
1462     ' Group By RDB$USER, RDB$USER_TYPE, RDB$OBJECT_TYPE, RDB$RELATION_NAME) RC'
1463     ' On RC.RDB$USER = UP.RDB$USER and RC.RDB$USER_TYPE = UP.RDB$USER_TYPE and'
1464     ' RC.RDB$OBJECT_TYPE = UP.RDB$OBJECT_TYPE and RC.RDB$RELATION_NAME = UP.RDB$RELATION_NAME'
1465     ' Where Trim(UP.RDB$USER) || UP.RDB$USER_TYPE = :ID and'
1466     ' (not (UP.RDB$OBJECT_TYPE in (0,9,13)) or'
1467     ' (UP.RDB$OBJECT_TYPE in (0,13) and'
1468     ' not Exists(Select * from RDB$RELATIONS Where RDB$RELATION_NAME = UP.RDB$RELATION_NAME and RDB$SYSTEM_FLAG <> 0)) or'
1469     ' (UP.RDB$OBJECT_TYPE = 9 and UP.RDB$RELATION_NAME not Similar to ''RDB$%|SEC$%|MON$%|SQL$%'')'
1470     ' )'
1471     ' Group BY UP.RDB$USER,UP.RDB$USER_TYPE,UP.RDB$OBJECT_TYPE,'
1472     ' UP.RDB$RELATION_NAME, UP.RDB$GRANTOR, RDB$GRANT_OPTION,T1.RDB$TYPE_NAME,'
1473     ' T2.RDB$TYPE_NAME, UC.Update_Columns, RC.Reference_Columns'
1474     ''
1475     )
1476     Params = <
1477     item
1478     DataType = ftUnknown
1479     Name = 'ID'
1480     ParamType = ptInput
1481     end>
1482     DataSetCloseAction = dcDiscardChanges
1483     left = 648
1484     top = 336
1485     ParamData = <
1486     item
1487     DataType = ftUnknown
1488     Name = 'ID'
1489     ParamType = ptInput
1490     end>
1491     end
1492 tony 209 object IBXServicesConnection1: TIBXServicesConnection
1493     Connected = False
1494 tony 272 AfterConnect = IBXServicesConnection1AfterConnect
1495 tony 209 OnLogin = IBXServicesConnection1Login
1496     Params.Strings = (
1497     'sql_role_name=RDB$ADMIN'
1498     )
1499     TraceFlags = []
1500     left = 640
1501     top = 48
1502     end
1503     object IBStatisticalService1: TIBXStatisticalService
1504     ServicesConnection = IBXServicesConnection1
1505     TraceFlags = []
1506     Options = [HeaderPages]
1507     left = 48
1508     top = 287
1509     end
1510     object IBConfigService1: TIBXConfigService
1511     ServicesConnection = IBXServicesConnection1
1512     TraceFlags = []
1513     left = 168
1514     top = 283
1515     end
1516     object IBServerProperties1: TIBXServerProperties
1517     ServicesConnection = IBXServicesConnection1
1518     TraceFlags = []
1519     left = 40
1520     top = 365
1521     end
1522     object IBLogService1: TIBXLogService
1523     ServicesConnection = IBXServicesConnection1
1524     TraceFlags = []
1525     left = 168
1526     top = 365
1527     end
1528     object IBSecurityService1: TIBXSecurityService
1529     ServicesConnection = IBXServicesConnection1
1530     TraceFlags = []
1531     UserID = 0
1532     GroupID = 0
1533     AdminRole = False
1534     left = 36
1535     top = 437
1536     end
1537     object IBValidationService1: TIBXValidationService
1538     ServicesConnection = IBXServicesConnection1
1539     TraceFlags = []
1540     OnGetNextLine = IBValidationService1GetNextLine
1541     Options = [ValidateFull]
1542     left = 632
1543     top = 416
1544     end
1545     object IBOnlineValidationService1: TIBXOnlineValidationService
1546     ServicesConnection = IBXServicesConnection1
1547     TraceFlags = []
1548     OnGetNextLine = IBValidationService1GetNextLine
1549     left = 40
1550     top = 503
1551     end
1552     object LegacyUserList: TIBXServicesUserList
1553     FieldDefs = <
1554     item
1555     Name = 'UserID'
1556     DataType = ftInteger
1557     Precision = -1
1558     end
1559     item
1560     Name = 'GroupID'
1561     DataType = ftInteger
1562     Precision = -1
1563     end
1564     item
1565     Name = 'SEC$USER_NAME'
1566     DataType = ftString
1567     Precision = -1
1568     Size = 31
1569     end
1570     item
1571     Name = 'SEC$FIRST_NAME'
1572     DataType = ftString
1573     Precision = -1
1574     Size = 32
1575     end
1576     item
1577     Name = 'SEC$MIDDLE_NAME'
1578     DataType = ftString
1579     Precision = -1
1580     Size = 32
1581     end
1582     item
1583     Name = 'SEC$LAST_NAME'
1584     DataType = ftString
1585     Precision = -1
1586     Size = 32
1587     end
1588     item
1589     Name = 'SEC$PASSWORD'
1590     DataType = ftString
1591     Precision = -1
1592     Size = 32
1593     end
1594     item
1595     Name = 'SEC$ADMIN'
1596     DataType = ftBoolean
1597     Precision = -1
1598     end
1599     item
1600     Name = 'SEC$PLUGIN'
1601     DataType = ftString
1602     Size = 21
1603     end
1604     item
1605     Name = 'SEC$ACTIVE'
1606     DataType = ftBoolean
1607     end
1608     item
1609     Name = 'LOGGEDIN'
1610     DataType = ftBoolean
1611     end
1612     item
1613     Name = 'DBCREATOR'
1614     DataType = ftBoolean
1615     end>
1616     AfterOpen = LegacyUserListAfterOpen
1617     BeforeClose = LegacyUserListBeforeClose
1618     AfterInsert = UserListAfterInsert
1619 tony 210 AfterPost = LegacyUserListAfterPost
1620 tony 209 Source = IBSecurityService1
1621     left = 167
1622     top = 438
1623     end
1624     object InLimboList: TIBXServicesLimboTransactionsList
1625     FieldDefs = <
1626     item
1627     Name = 'TransactionID'
1628     DataType = ftInteger
1629     Precision = -1
1630     end
1631     item
1632     Name = 'TransactionType'
1633     DataType = ftString
1634     Precision = -1
1635     Size = 16
1636     end
1637     item
1638     Name = 'HostSite'
1639     DataType = ftString
1640     Precision = -1
1641     Size = 256
1642     end
1643     item
1644     Name = 'RemoteSite'
1645     DataType = ftString
1646     Precision = -1
1647     Size = 256
1648     end
1649     item
1650     Name = 'DatabasePath'
1651     DataType = ftString
1652     Precision = -1
1653     Size = 256
1654     end
1655     item
1656     Name = 'State'
1657     DataType = ftString
1658     Precision = -1
1659     Size = 32
1660     end
1661     item
1662     Name = 'RecommendedAction'
1663     DataType = ftString
1664     Precision = -1
1665     Size = 32
1666     end
1667     item
1668     Name = 'RequestedAction'
1669     DataType = ftString
1670     Precision = -1
1671     Size = 32
1672     end>
1673     Source = IBLimboTrans
1674     left = 296
1675     top = 496
1676     end
1677     object IBLimboTrans: TIBXLimboTransactionResolutionService
1678     ServicesConnection = IBXServicesConnection1
1679     TraceFlags = []
1680     GlobalAction = CommitGlobal
1681     left = 176
1682     top = 496
1683     end
1684 tony 272 object ConfigDataset: TMemDataset
1685     FieldDefs = <
1686     item
1687     Name = 'ParamDescription'
1688     DataType = ftString
1689     Size = 256
1690     end
1691     item
1692     Name = 'ParamValue'
1693     DataType = ftInteger
1694     end>
1695     AfterClose = ConfigDatasetAfterClose
1696     left = 528
1697     top = 424
1698     end
1699 tony 158 end