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

File Contents

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