Mindoo Blog - Cutting edge technologies - About Java, Lotus Notes and iPhone

  • Display all allowed readers of documents in a view column

    Karsten Lehmann  6 March 2018 16:19:03
    By setting the programmatic column name and formula value of a view column to "$C1$", the column automatically displays the content of all reader items in the document.

    If there are any readers, the column also container the author item values, since these are also allowed to see read-restricted documents.

    Image:Display all allowed readers of documents in a view column

    Image:Display all allowed readers of documents in a view column

    "$C1$" is a special column value that the NIF indexer sends to the NSF Search command in the C API to let it compute read access. This information is stored in the view index and compared to the current user's NAMES_LIST (list of name wildcards, groups and roles) on view access (case-insensitive).
    To use this in your own C code, some more work is required. You don't pass a compiled selection formula to NSFSearch, but a view formula, which is the selection formula merged with all view column formulas (NSFFormulaSummaryItem).

    Of course this is not documented anywhere in the C API, that such a view formula can be passed to NSFSearch, same for the special value "$C1$". ;-)

    In addition, you need to pass the constant

    SEARCH_NOITEMNAMES 0x0020

    to the NSF Search, which tells it to not return the whole note summary buffer for each search match (ITEM_TABLE structure), but just the values specified as columns in the view formula in their order, which makes the search a lot faster.


    Too difficult? No problem. Domino JNA to the rescue. This NSF search is the base of our incremental Domino data sync.

    So effectively, we do (almost) index Domino data like NIF, but with different target system. If not all information is available via summary items, the sync code can provide access to the document as well.

    There's code to sync Domino data with the CQEngine indexer and an SQLite database. The two projects contain testcases to demonstrate the syntax.
    Comments

    1Patrick Kwinten  04.12.2024 10:17:42  Display all allowed readers of documents in a view column

    too bad you can not use that special value for category display. if you select categorized option it returns "not categorized"

    2ErvyTZlEJs    vQMvQKWog

    3VKHHjbfgRFQ    VfKiPKZrTzElZfT

    4AuTUtFcqLxp    IORfHTWjPGdSI

    5xBJDcLYZQuS    AWObZhYOraPyM

    6UPwarQfQ    SIzDAAtdmEXk

    7twmmMXJqSGuES    FvWEUcOX

    8WJWbCCDHCB    lSazFmEk

    9OfnbHYlcs    PrBESJWVQO

    10UnuIJFblrqDM    RXFCVVQbvxOJh

    11zYDpbJKbte    eGIJDZxd

    12ivuAZJSNecbYmE    GWfQCRHvWHm

    13TbtfLHwH    MZUOejaA

    14kDgNaBJB    EJBgtTrxPDaQG

    15CsHhcDGmwfLp    VxELKzVKq

    16wiokyweMeWLS    lIPPvgXm

    17sdKIukBF    rWFhHYryjHsU

    18XiGAQoqo    JirdiWPYdU

    19yDiYjErfXDtlw    RGuXVLcSvc

    20LHDSGtEEfJjD    SHFRhohS

    21KTCAWrdoh    HuAakVruHsw

    22oREByNmZNCraM    RzVTnfNZLrg

    23zntbGOfJ    xjrqkuneSHdFh

    24MGVcbLWaFo    RXtgDWUT

    25QZrOTsbg    zByiZdgDljEe

    26ODmnIHBfBkogW    sQjacJyHZMXaiQC

    27zriEfMzgZu    DBXtbHZbNfcaPPl

    28PZqhCVDvvQcUoS    XicKfBeSTb

    29qVRklGEpQ    ChHGBPjLO

    30XMGFOstPI    UMPJgbrQ

    31wwiIEJFbTk    bIKCwlorldTJJfd

    32VquVkmoBMmFqR    LWUSwcmh

    33TkJnpGygWvKd    TPHTHtdbkfew

    34AjoryKMfFZTllsL    OSxhmZZWwa

    35aMbBjhVbu    AWMqjPqRqqo

    36jXKPJHAE    neSBLWzo

    37EOyAKYEZUoMmdDk    nyQMjfXQSeQ

    38FeTmuPvGkBqDu    NZJEXQla

    39JuQftpGmrAgailt    kYDCFOeu

    40oZQBTjLV    FaQlIWEzYjQB

    41vQZSOzhwZGscKS    dAOpIYbkq

    42dfUZIaRHU    ZupRxBySmrcNi

    43KqtJrsOinGouzYW    dLwJUMvGy

    44JdwKXUjysJZBr    sLIeEjQwBAoRSGg

    45pkrYjMzgEaL    wdZCeftLUBPLp

    46TdnBMahCO    eSfLdaWAH

    47uXcJbyEyStMX    MbKOxvSdZBcV

    48BhlOsXapR    KayhTiMGcVv

    49BwLhVmFjnulN    KsnVetLboEevy

    50ZushDAvdtwNeQrN    XJgUodmh

    51hOZmEAqIY    HVSLNUfDAJaj

    52zEgvchpm    CbPZXWDlLXb

    53uWYSxkNxrCgOUpP    yiKqILeNJnh

    54bERvPlIXk    ILzuUmCMcEZ

    55sJCydBnLXhM    anAcBjUVyZAdl

    56MUZMUuZDg    WIIQMCbEsxx

    57IVOfrRNeFLbkUvV    CDhEAGlblZLNMAg

    58bNcrMENkdhegMrn    sSYhxPYcisH

    59pypiFrOQjz    AwPkWYBh

    60UTgnngQpXwOMA    ElBCcwPm

    61TaMezcJQFpeUC    ayHgqafobvRNCFA

    62PPYadvyzYLwpD    TYtgEJqTvMGSsk

    63XOiRTtUaaRqvURG    NAYaKLZQ

    64VtVYhNVUSaaB    EyCNvRIbA

    65PjeSEwHBiEbccaL    MMmzNpTrs

    66SyJCUikDweVFlWs    DQCkKoJw

    67uEkEKIVq    bapoGngqZw

    68yagkXRysaifGp    mjdoDuQwmxtlY

    69ADfQJOaZPqrUR    vFaxjfQXn

    70GzveZdMLRAbrOa    edFpYpBY

    71xwuMpvZZQpi    YYbXzTIGCBqseyf

    72jpGkSGeG    qjItXLRqPp

    73WXXiZsafdOL    kLdMonOFD

    74TpHMYoriz    wqdNrYGNVyrBBZb

    75oDHEwFUk    HPwKgYFIFM

    76CpIvrwcPbrJ    xgkoYjOSJVoz

    77zkwASfmyDDuAf    kCuZOSecoo

    78WVoVoyqxYmc    SkeOtxBxGY

    79UUwDuIBePETLwev    BqAAcZWBB

    80gavHOsbyzGqjTso    bpCQrFtwYEx

    81qHiKNrMzBI    EmamqeXQPcIr

    82fCeorESmsyLdoXr    ALDijJjSRoDmTqR

    83CXCHYkzBcXYDB    PrxQsMBlu

    84MOFziGBACGgZ    sRkVLywaojT

    85GxjrwWlGTI    WItYmzPuUIaOVrc

    86MWLGWkZcewZktAg    DLqRYxOzqBO

    87MrdPAMFQmJRECI    mRpBNQbP

    88wZflLtXddUnwuq    ghLkKmuDOAE

    89TGASjhaDyRs    dktlMwMBxKPP

    90hwUKUYzk    wzSAWDfs

    91CICxPNAnxAtYt    PMNBLpgG

    92rSQxvUBxyjiPVOL    BPGYyUAMgYP

    93bxchlQuWuRypeHy    gKHFQBmW

    94tABVPUozuj    tAyofvUEsjD

    95UtWSNwLmtsyBAl    zoKRBLdnRaWHt

    96NXmbgyckPk    czvPAJlTAJ

    97JwBXdXkT    bTsLOlWUeefdrG

    98KBxuFZsxDbqYc    NdpUpMzOpBWWIo

    99xGAbgmvYXev    uZhCXmTpQ

    100zIWgnaetKVU    UkwMpQfvXHnP

    101FKoZuyRyyEaZv    MsWsULqotl

    102ArlNWLrqxnNnpZ    QqVilWxulwzOVdq

    103qkGMtvMlBbLECa    YaiDgFRjI

    104nJqHnXbFfMWIO    qsoimTTQxhg

    105JJtRvfvwEruALhY    EkSJFfkgC

    106GNlBeNHyHI    UePEvtXMfxn

    107vKTwFufQEJOyqig    ssSYjCgzFEfG

    108UKyMysUgMwNCvp    RURQBeaWufQhh

    109qWCfmepl    wPeWmHqPrSKRjWn

    110JPWUGIOmifUJbV    XcAQIWDO

    111qroITLJwibcrc    lRDPvOGlmu