Technical Blog Post
Abstract
How to interpret the value of ICCMailFlags
Body
In the IBM Content Collector (ICC) documentation, it explains that ICCMailFlags property is a bit-based combination of individual email properties.
Documentation:
- Bit 0 (value 1) <Email, Might Have Attachment>
Bit 1 (value 2) <Email, Has Attachment>- Bit 2 (value 4) <Email, Is Encrypted>
- Bit 3 (value 8) <Email, Is Signed>
- Bit 4 (value 16) <Email, Is under IRM>
- Bit 5 (value 32) <Email, Is Decrypted>
- Bit 6 (value 64) <Email, Is Private>
Additional bits are reserved for future use and to store the version of the MailFlags property.
For example, the value for a signed email document with attachments is -2147483638 (hexadecimal value 0x8000000A). The value for a standard email document without attachments is -2147483648 (hexadecimal value 0x00000000).
What exactly does it mean?
For example, I run this database query in P8 and obtain the following results:
Query:
SELECT ICCMailFlags, count(*) FROM P8DB2."DOCVERSION" where and object_class_id = (select object_id from P8DB2USR.classdefinition where symbolic_name = 'ICCMail3') group by ICCMailFlags
Results:
ICCMailFlags | Count |
-2147483648 | 1052675 |
-2147483646 | 127600 |
-2147483644 | 3071 |
-2147483642 | 37501 |
-2147483640 | 35 |
-2147483638 | 2576 |
-2147483584 | 3472 |
-2147483582 | 467 |
-2147483580 | 80 |
-2147483578 | 2317 |
How should I interpret these values?
- To see what the value of ICCMailFlags mean, first convert the value into a binary number.
- On Windows, you can do that with Calculator.
- Bit 0 starts with the right-most value. Followed by Bit 1 to the left and so on and so forth.
Examples
- Decimal value: -2147483646
Binary value: 1000 0000 0000 0000 0000 0000 0000 0010
Bit 1 is set.
According to the documentation, when bit 1 is set, it means the email has attachments.
- Decimal value: -2147483642
Binary value:1000 0000 0000 0000 0000 0000 0000 0110
Bit 1 and 2 are both set.
It means the email has attachments and email is encrypted.
To complete the analysis on the above example,
ICCMailFlags | Count | Binary value of ICCMailFlags | What it means |
-2147483648 | 1052675 | 1000 0000 0000 0000 0000 0000 0000 0000 | Email does not have any attachment, is not encrypted, is not signed. |
-2147483646 | 127600 | 1000 0000 0000 0000 0000 0000 0000 0010 | Email has attachment(s). |
-2147483644 | 3071 | 1000 0000 0000 0000 0000 0000 0000 0100 | Email is encrypted. |
-2147483642 | 37501 | 1000 0000 0000 0000 0000 0000 0000 0110 | Email is encrypted and has attachment(s). |
-2147483640 | 35 | 1000 0000 0000 0000 0000 0000 0000 1000 | Email is signed. |
-2147483638 | 2576 | 1000 0000 0000 0000 0000 0000 0000 1010 | Email is signed and has attachment(s). |
-2147483584 | 3472 | 1000 0000 0000 0000 0000 0000 0100 0000 | Email is private. |
-2147483582 | 467 | 1000 0000 0000 0000 0000 0000 0100 0010 | Email is private and has attachment(s). |
-2147483580 | 80 | 1000 0000 0000 0000 0000 0000 0100 0100 | Email is private and is encrypted. |
-2147483578 | 2317 | 1000 0000 0000 0000 0000 0000 1000 0110 | Email is private, is encrypted, and has attachment(s). |
The count column gives the total number for that type of emails in your repository.
UID
ibm11138930