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