InfoMaker stores information you provide for a database table (such as the text to use for labels and headings for the columns, validation rules, display formats, and edit styles) in system tables in your database. These system tables are called the extended attribute system tables. The tables contain all the information related to the extended attributes for the tables and columns in the database. The extended attributes are used in reports.
The system tables
There are five extended attribute system tables.
Table B-1: List of extended attribute system tables
Table |
Contains information about |
---|---|
PBCatTbl |
Tables in the database |
PBCatCol |
Columns in the database |
PBCatFmt |
Display formats |
PBCatVld |
Validation rules |
PBCatEdt |
Edit styles |
What to do with the tables
You can open and look at these tables in the Database painter just like other tables. You might want to create a report of the extended attribute information used in your database by building a report whose data source is the extended attribute system tables.
Caution
You should not change the values in the extended attribute system tables. InfoMaker maintains this information automatically whenever you change information for a table or column in the Database painter.
This section lists and describes all of the columns in each of the extended attribute system tables.
Table B-2: The PBCatTbl table
Column |
Column name |
Description |
---|---|---|
1 |
pbt_tnam |
Table name |
2 |
pbt_tid |
Adaptive Server Enterprise Object ID of table (used for Adaptive Server Enterprise only) |
3 |
pbt_ownr |
Table owner |
4 |
pbd_fhgt |
Data font height, PowerBuilder units |
5 |
pbd_fwgt |
Data font stroke weight (400=Normal, 700=Bold) |
6 |
pbd_fitl |
Data font Italic (Y=Yes, N=No) |
7 |
pbd_funl |
Data font Underline (Y=Yes, N=No) |
8 |
pbd_fchr |
Data font character set (0=ANSI, 2=Symbol, 255=OEM) |
9 |
pbd_fptc |
Data font pitch and family (see note) |
10 |
pbd_ffce |
Data font typeface |
11 |
pbh_fhgt |
Headings font height, PowerBuilder units |
12 |
pbh_fwgt |
Headings font stroke weight (400=Normal, 700=Bold) |
13 |
pbh_fitl |
Headings font Italic (Y=Yes, N=No) |
14 |
pbh_funl |
Headings font Underline (Y=Yes, N=No) |
15 |
pbh_fchr |
Headings font character set (0=ANSI, 2=Symbol, 255=OEM) |
16 |
pbh_fptc |
Headings font pitch and family (see note) |
17 |
pbh_ffce |
Headings font typeface |
18 |
pbl_fhgt |
Labels font height, PowerBuilder units |
19 |
pbl_fwgt |
Labels font stroke weight (400=Normal, 700=Bold) |
20 |
pbl_fitl |
Labels font Italic (Y=Yes, N=No) |
21 |
pbl_funl |
Labels font Underline (Y=Yes, N=No) |
22 |
pbl_fchr |
Labels font character set (0=ANSI, 2=Symbol, 255=OEM) |
23 |
pbl_fptc |
Labels font pitch and family (see note) |
24 |
pbl_ffce |
Labels font typeface |
25 |
pbt_cmnt |
Table comments |
About font pitch and family
Font pitch and family is a number obtained by adding together two constants:
Pitch: 0=Default, 1=Fixed, 2=Variable
Family: 0=No Preference, 16=Roman, 32=Swiss, 48=Modern, 64=Script, 80=Decorative
Table B-3: The PBCatCol table
Column |
Column name |
Description |
---|---|---|
1 |
pbc_tnam |
Table name |
2 |
pbc_tid |
Adaptive Server Enterprise Object ID of table (used for Adaptive Server Enterprise only) |
3 |
pbc_ownr |
Table owner |
4 |
pbc_cnam |
Column name |
5 |
pbc_cid |
Adaptive Server Enterprise Column ID (used for Adaptive Server Enterprise only) |
6 |
pbc_labl |
Label |
7 |
pbc_lpos |
Label position (23=Left, 24=Right) |
8 |
pbc_hdr |
Heading |
9 |
pbc_hpos |
Heading position (23=Left, 24=Right, 25=Center) |
10 |
pbc_jtfy |
Justification (23=Left, 24=Right) |
11 |
pbc_mask |
Display format name |
12 |
pbc_case |
Case (26=Actual, 27=UPPER, 28=lower) |
13 |
pbc_hght |
Column height, PowerBuilder units |
14 |
pbc_wdth |
Column width, PowerBuilder units |
15 |
pbc_ptrn |
Validation rule name |
16 |
pbc_bmap |
Bitmap/picture (Y=Yes, N=No) |
17 |
pbc_init |
Initial value |
18 |
pbc_cmnt |
Column comments |
19 |
pbc_edit |
Edit style name |
20 |
pbc_tag |
(Reserved) |
Table B-4: The PBCatFmt table
Column |
Column name |
Description |
---|---|---|
1 |
pbf_name |
Display format name |
2 |
pbf_frmt |
Display format |
3 |
pbf_type |
Datatype to which format applies |
4 |
pbf_cntr |
Concurrent-usage flag |
Table B-5: The PBCatVld table
Column |
Column name |
Description |
---|---|---|
1 |
pbv_name |
Validation rule name |
2 |
pbv_vald |
Validation rule |
3 |
pbv_type |
Datatype to which validation rule applies |
4 |
pbv_cntr |
Concurrent-usage flag |
5 |
pbv_msg |
Validation error message |
Table B-6: The PBCatEdt table
Column |
Column name |
Description |
---|---|---|
1 |
pbe_name |
Edit style name |
2 |
pbe_edit |
Format string (edit style type dependent; see Edit style types for the PBCatEdt table) |
3 |
pbe_type |
Edit style type (see Table B-7) |
4 |
pbe_cntr |
Revision counter (increments each time edit style is altered) |
5 |
pbe_seqn |
Row sequence number for edit types requiring more than one row in PBCatEdt table |
6 |
pbe_flag |
Edit style flag (edit style type dependent) |
7 |
pbe_work |
Extra field (edit style type dependent) |
Table B-7 shows the edit style types available for the PBCatEdt table.
Table B-7: Edit style types for the PBCatEdt table
Edit style type |
pbe_type value (column 3) |
---|---|
CheckBox |
85 |
RadioButton |
86 |
DropDownListBox |
87 |
DropDownDataWindow |
88 |
Edit |
89 |
Edit Mask |
90 |
Table B-8 shows a sample row in the PBCatEdt table for a CheckBox edit style. Table B-9 shows the meaning of the values in Table B-8.
Table B-8: Sample row in PBCatEdt for a CheckBox edit style
Name |
Edit |
Type |
Cntr |
Seqn |
Flag |
Work |
---|---|---|---|---|---|---|
MyEdit |
Text |
85 |
1 |
1 |
Flag |
|
MyEdit |
OnValue |
85 |
1 |
2 |
0 |
|
MyEdit |
OffValue |
85 |
1 |
3 |
0 |
|
MyEdit |
ThirdValue |
85 |
1 |
4 |
0 |
|
Table B-9: Values used in CheckBox edit style sample
Value |
Meaning |
---|---|
Text |
CheckBox text |
OnValue |
Data value for On state |
OffValue |
Data value for Off state |
ThirdValue |
Data value for Third state (this row exists only if 3 State is checked for the edit style -- bit 30 of Flag is 1) |
Flag |
32-bit flag. Low-order four hex digits are generic edit type; high-order four are styles within the type. A 1 in any bit indicates the corresponding style is checked. A 0 in any bit indicates the corresponding style is unchecked. Bit 31: Left Text Bit 30: 3 State Bit 29: 3D Bit 28: Scale Box Bits 27 - 16 (3 hex digits): Not used (set to 0) Bits 15 - 4 (3 hex digits): Always 0 for CheckBox edit style Bit 3: Always 0 for CheckBox edit style Bit 2: Always 1 for CheckBox edit style Bit 1: Always 0 for CheckBox edit style Bit 0: Always 0 for CheckBox edit style |
Table B-10 shows a sample row in the PBCatEdt table for a RadioButton edit style. Table B-11 shows the meaning of the values in Table B-10.
Table B-10: Sample row in PBCatEdt for a RadioButton edit style
Name |
Edit |
Type |
Cntr |
Seqn |
Flag |
Work |
---|---|---|---|---|---|---|
MyEdit |
Columns |
86 |
1 |
1 |
Flag |
|
MyEdit |
Display1 |
86 |
1 |
2 |
0 |
|
MyEdit |
Data1 |
86 |
1 |
3 |
0 |
|
MyEdit |
Display2 |
86 |
1 |
4 |
0 |
|
MyEdit |
Data2 |
86 |
1 |
5 |
0 |
|
Table B-11: Values used in RadioButton edit style sample
Value |
Meaning |
---|---|
Columns |
Character representation (in decimal) of number of columns (buttons) across. |
Display1 |
Display value for first button. |
Data1 |
Data value for first button. |
Display2 |
Display value for second button. |
Data2 |
Data value for second button. Display and data values are repeated in pairs for each radio button defined in the edit style. |
Flag |
32-bit flag. Low-order four hex digits are generic edit type; high-order four are styles within the type. A 1 in any bit indicates the corresponding style is checked. A 0 in any bit indicates the corresponding style is unchecked. Bit 31: Left Text Bit 30: 3D Bit 29: Scale Circles Bit 38: Not used (set to 0) Bits 27 - 16 (3 hex digits): Not used (set to 0) Bits 15 - 4 (3 hex digits): Always 0 for RadioButton edit style Bit 3: Always 1 for RadioButton edit style Bit 2: Always 0 for RadioButton edit style Bit 1: Always 0 for RadioButton edit style Bit 0: Always 0 for RadioButton edit style |
Table B-12 shows a sample row in the PBCatEdt table for a DropDownListBox edit style. Table B-13 shows the meaning of the values in Table B-12.
Table B-12: Sample row in PBCatEdt for a DropDownListBox edit style
Name |
Edit |
Type |
Cntr |
Seqn |
Flag |
Work |
---|---|---|---|---|---|---|
MyEdit |
Limit |
87 |
1 |
1 |
Flag |
Key |
MyEdit |
Display1 |
87 |
1 |
2 |
0 |
|
MyEdit |
Data1 |
87 |
1 |
3 |
0 |
|
MyEdit |
Display2 |
87 |
1 |
4 |
0 |
|
MyEdit |
Data2 |
87 |
1 |
5 |
0 |
|
Table B-13: Values used in DropDownListBox edit style sample
Value |
Meaning |
---|---|
Limit |
Character representation (in decimal) of the Limit value. |
Key |
One-character accelerator key. |
Display1 |
Display value for first entry in code table. |
Data1 |
Data value for first entry in code table. |
Display2 |
Display value for second entry in code table. |
Data2 |
Data value for second entry in code table. Display and data values are repeated in pairs for each entry in the code table. |
Flag |
32-bit flag. Low-order four hex digits are generic edit type; high-order four are styles within the type. A 1 in any bit indicates the corresponding style is checked. A 0 in any bit indicates the corresponding style is unchecked. Bit 31: Sorted Bit 30: Allow editing Bit 29: Auto HScroll Bit 28: VScroll bar Bit 27: Always show list Bit 26: Always show arrow Bit 25: Uppercase Bit 24: Lowercase (if bits 25 and 24 are both 0, then case is Any) Bit 23: Empty string is NULL Bit 22: Required field Bit 21: Not used (set to 0) Bit 20: Not used (set to 0) Bits 19 - 16 (1 hex digit): Not used (set to 0) Bits 15 - 4 (3 hex digits): Always 0 for DropDownListBox edit style Bit 3: Always 0 for DropDownListBox edit style Bit 2: Always 0 for DropDownListBox edit style Bit 1: Always 1 for DropDownListBox edit style Bit 0: Always 0 for DropDownListBox edit style |
Table B-14 shows a sample row in the PBCatEdt table for a DropDownDataWindow edit style. Table B-15 shows the meaning of the values in Table B-14.
Table B-14: Sample row in PBCatEdt for a DropDownDataWindow edit style
Name |
Edit |
Type |
Cntr |
Seqn |
Flag |
Work |
---|---|---|---|---|---|---|
MyEdit |
DataWin |
88 |
1 |
1 |
Flag |
Limit |
MyEdit |
DataCol |
88 |
1 |
2 |
0 |
Key |
MyEdit |
DisplayCol |
88 |
1 |
3 |
0 |
Width% |
Table B-15: Values used in DropDownDataWindow edit style sample
Value |
Meaning |
---|---|
DataWin |
Name of DataWindow object (report) to use. |
DataCol |
Data column from DataWindow object (report). |
DisplayCol |
Display column from DataWindow object (report). |
Limit |
Character representation (in decimal) of Limit value. |
Key |
One-character accelerator key. |
Width% |
Width of the dropdown part of the DropDownDataWindow in %. |
Flag |
32-bit flag. Low-order four hex digits are generic edit type; high-order four are styles within the type. A 1 in any bit indicates the corresponding style is checked. A 0 in any bit indicates the corresponding style is unchecked. Bit 31: Allow editing Bit 30: Auto HScroll Bit 29: VScroll bar Bit 28: Always show list Bit 27: Uppercase Bit 26: Lowercase (if bits 27 and 26 are both 0, then case is Any) Bit 25: HScroll bar Bit 24: Split horizontal scroll bar Bit 23: Empty string is NULL Bit 22: Required field Bit 21: Always show arrow Bit 20: Not used (set to 0) Bits 19 - 16 (1 hex digit): Not used (set to 0) Bits 15 - 8 (2 hex digits): Always 0 for DropDownDataWindow edit style Bit 7: Always 0 for DropDownDataWindow edit style Bit 6: Always 0 for DropDownDataWindow edit style Bit 5: Always 0 for DropDownDataWindow edit style Bit 4: Always 1 for DropDownDataWindow edit style Bit 3 - 0 (1 hex digit): Always 0 for DropDownDataWindow edit style |
Table B-16 shows a sample row in the PBCatEdt table for an Edit edit style. Table B-17 shows the meaning of the values in Table B-16.
About the example
This example shows an Edit edit style using a code table of display and data values. There is a pair of rows in PBCatEdt for each entry in the code table only if bit 23 of Flag is 1.
For information about code tables in edit styles, see Displaying and Validating Data
Table B-16: Sample row in PBCatEdt for an Edit edit style
Name |
Edit |
Type |
Cntr |
Seqn |
Flag |
Work |
---|---|---|---|---|---|---|
MyEdit |
Limit |
89 |
1 |
1 |
Flag |
Key |
MyEdit |
Format |
89 |
1 |
2 |
0 |
Focus |
MyEdit |
Display1 |
89 |
1 |
3 |
0 |
|
MyEdit |
Data1 |
89 |
1 |
4 |
0 |
|
MyEdit |
Display2 |
89 |
1 |
5 |
0 |
|
MyEdit |
Data2 |
89 |
1 |
6 |
0 |
|
Table B-17: Values used in Edit edit style sample
Value |
Meaning |
---|---|
Limit |
Character representation (in decimal) of Limit value. |
Key |
One-character accelerator key. |
Format |
Display format mask. |
Focus |
Character "1" if Show Focus Rectangle is checked. NULL otherwise. |
Flag |
32-bit flag. Low-order four hex digits are generic edit type; high-order four are styles within the type. A 1 in any bit indicates the corresponding style is checked. A 0 in any bit indicates the corresponding style is unchecked. Bit 31: Uppercase Bit 30: Lowercase (if Bits 31 and 30 are both 0, then case is Any) Bit 29: Auto selection Bit 28: Password Bit 27: Auto HScroll Bit 26: Auto VScroll Bit 25: HScroll bar Bit 24: VScroll bar Bit 23: Use code table Bit 22: Validate using code table Bit 21: Display only Bit 20: Empty string is NULL Bit 19: Required field Bit 18: Not used (set to 0) Bit 17: Not used (set to 0) Bit 16: Not used (set to 0) Bits 15 - 4 (3 hex digits): Always 0 for Edit edit style Bit 3: Always 0 for Edit edit style Bit 2: Always 0 for Edit edit style Bit 1: Always 0 for Edit edit style Bit 0: Always 1 for Edit edit style |
Table B-18 shows a sample row in the PBCatEdt table for an EditMask edit style. Table B-19 shows the meaning of the values in Table B-18.
About the example
This example shows an Edit Mask edit style using a code table of display and data values as part of a spin control. Rows 2 and beyond exist in PBCatEdt only if the edit mask is defined as a spin control (bit 29 of Flag is 1). Rows 3 and beyond exist only if the optional code table is populated.
For information about using an edit mask as a spin control, see Displaying and Validating Data
Table B-18: Sample row in PBCatEdt for an EditMask edit style
Name |
Edit |
Type |
Cntr |
Seqn |
Flag |
Work |
---|---|---|---|---|---|---|
MyEdit |
Format |
90 |
1 |
1 |
Flag |
DtFcKy |
MyEdit |
Range |
90 |
1 |
2 |
0 |
SpinInc |
MyEdit |
Display1 |
90 |
1 |
3 |
0 |
|
MyEdit |
Data1 |
90 |
1 |
4 |
0 |
|
MyEdit |
Display2 |
90 |
1 |
5 |
0 |
|
MyEdit |
Data2 |
90 |
1 |
6 |
0 |
|
Table B-19: Values used in EditMask edit style sample
Value |
Meaning |
---|---|
Format |
Display format mask. |
DtFcKy |
Concatenated string with 1-character data-type code, 1-character focus-rectangle code (0 or 1), and 1-character accelerator key. Data type codes: Format String = "0" Format Number = "1" Format Date = "2" Format Time = "3" Format DataTime= "4" Examples: "10x" means format is Number type, focus rectangle option is unchecked, accelerator key is "x" "31z" means format is Time type, focus rectangle option is checked, accelerator key is "z" |
Range |
Character representation (in decimal) of spin control range. The min value and max value are tab-delimited. Example: "1[tab]13" means min = 1, max = 13 |
SpinInc |
Character representation (in decimal) of spin increment. |
Display1 |
Display value for first entry in code table. |
Data1 |
Data value for first entry in code table. |
Display2 |
Display value for second entry in code table. |
Data2 |
Data value for second entry in code table. Display and data values are repeated in pairs for each entry in the code table. |
Flag |
32-bit flag. Low-order four hex digits are generic edit type; high-order four are styles within the type. A 1 in any bit indicates the corresponding style is checked. A 0 in any bit indicates the corresponding style is unchecked. Bit 31: Required Bit 30: Autoskip Bit 29: Spin control Bit 28: Read only (code table option) Bit 27: Use code table Bit 26: Not used (set to 0) Bit 25: Not used (set to 0) Bit 24: Not used (set to 0) Bit 23 - 16 (2 hex digits): Not used (set to 0) Bit 15 - 8 (2 hex digits): Always 0 for Edit Mask edit style Bit 7: Always 0 for Edit Mask edit style Bit 6: Always 0 for Edit Mask edit style Bit 5: Always 1 for Edit Mask edit style Bit 4: Always 0 for Edit Mask edit style Bits 3 - 0 (1 hex digit): Always 0 for Edit Mask edit style |