119
ICONUK 2016 Martin Leyrer, IBM Austria London, 2016-09-15 Feed me, Seymour! Supplemental User Data For IC Profiles

Feed me, Seymore - Supplemental User Data for IC Profiles

Embed Size (px)

Citation preview

Page 1: Feed me, Seymore - Supplemental User Data for IC Profiles

ICONUK 2016

Martin Leyrer, IBM Austria

London, 2016-09-15

Feed me, Seymour! Supplemental User Data For IC Profiles

Page 2: Feed me, Seymore - Supplemental User Data for IC Profiles

Martin Leyrer - IBM

● IBM Collaboration Solutions IT-Specialist with IBM Austria

● ICS product stack since 1995

● IBM e-mail: [email protected]

● E-mail: [email protected]

● Twitter: http://www.twitter.com/leyrer

● Facebook: https://www.facebook.com/leyrer

● Blog: http://www.leyon.at

Page 3: Feed me, Seymore - Supplemental User Data for IC Profiles

Addresses

Page 4: Feed me, Seymore - Supplemental User Data for IC Profiles

Easy, right?

Page 5: Feed me, Seymore - Supplemental User Data for IC Profiles

IBM United Kingdom Limited76/78 Upper Ground

South BankLondon SE1 9PZUnited Kingdom

Page 6: Feed me, Seymore - Supplemental User Data for IC Profiles

IBM ÖsterreichHauptverwaltung

Obere Donaustraße 95,1020 Vienna

ViennaAustria

Page 7: Feed me, Seymore - Supplemental User Data for IC Profiles

IBM 中国有限公司北京市朝阳区北四环中路 27号盘古大观写字楼

25层

Page 8: Feed me, Seymore - Supplemental User Data for IC Profiles

Easy?

Page 9: Feed me, Seymore - Supplemental User Data for IC Profiles

Addresses will have a reasonablenumber of characters

Say less than 100.

Page 10: Feed me, Seymore - Supplemental User Data for IC Profiles

Department For Environment Food & Rural Affairs (D E F R A)

State Veterinary Service, Animal Health OfficeHadrian House, Wavell Drive

Rosehill Industrial EstateCarlisle, CA1 2TBUnited Kingdom

Page 11: Feed me, Seymore - Supplemental User Data for IC Profiles

But street names will be reasonably short.Certainly less than 50 characters

Page 12: Feed me, Seymore - Supplemental User Data for IC Profiles

Bischöflich-Geistlicher-Rat-Josef-Zinnbauer-Straße

84130 DingolfingBavaria

Germany

Page 13: Feed me, Seymore - Supplemental User Data for IC Profiles

Five lines and country will cover all cases.

Page 14: Feed me, Seymore - Supplemental User Data for IC Profiles

GB Technical ServicesUnit W7a

Warwick House18 Forge Lane

Minworth Industrial ParkMinworth

Sutton Coldfield B76 1AHUnited Kingdom

Page 15: Feed me, Seymore - Supplemental User Data for IC Profiles

And what do we get in IBM Connections to cover all this?

Page 16: Feed me, Seymore - Supplemental User Data for IC Profiles

CREATE TABLE EMPINST.EMPLOYEE (...

PROF_PHYSICAL_DELIVERY_OFFICEVARCHAR(32) ,

...

Page 17: Feed me, Seymore - Supplemental User Data for IC Profiles

Technote #1698402

An enhancement request for increasing the limit has been raised under APAR LO33688 for

development consideration for a future release.

Page 18: Feed me, Seymore - Supplemental User Data for IC Profiles

Former Technote #1968915

db2 "ALTER TABLE EMPINST.EMPLOYEE ALTER COLUMN

PROF_PHYSICAL_DELIVERY_OFFICE SET DATA TYPE VARCHAR(64)"

Page 19: Feed me, Seymore - Supplemental User Data for IC Profiles

We want

“an elegant weapon, for a more civilized age.”

Page 20: Feed me, Seymore - Supplemental User Data for IC Profiles

Supplemental User Data for Profiles

Page 21: Feed me, Seymore - Supplemental User Data for IC Profiles

CountriesWork Locations

OrganizationDepartments

Page 22: Feed me, Seymore - Supplemental User Data for IC Profiles

profiles_tdi.properties

country_table_csv_separator=;country_table_csv_file=isocc.csv

department_table_csv_separator=;department_table_csv_file=deptinfo.csv

organization_table_csv_separator=;organization_table_csv_file=orginfo.csv

workloc_table_csv_separator=;workloc_table_csv_file=workloc.csv

Page 23: Feed me, Seymore - Supplemental User Data for IC Profiles

Countries

Page 24: Feed me, Seymore - Supplemental User Data for IC Profiles

isocc.csv

...gb;Great Britain

gd;Grenadage;Georgia

gf;French Guyanagh;Ghanagi;Gibraltar

gl;Greenland...

Page 25: Feed me, Seymore - Supplemental User Data for IC Profiles

ISO 3166-1 alpha-2

Page 26: Feed me, Seymore - Supplemental User Data for IC Profiles

gb;Great Britain

Page 27: Feed me, Seymore - Supplemental User Data for IC Profiles

gb;Great Britain

� Case Sensitve

Page 28: Feed me, Seymore - Supplemental User Data for IC Profiles

gb;Great Britain

� Case Sensitve

� One Language Only

Page 29: Feed me, Seymore - Supplemental User Data for IC Profiles

We Can make issoc.csv

Great Again!

Page 30: Feed me, Seymore - Supplemental User Data for IC Profiles

We Can make issoc.csv

Great Again!

(partially)

Page 31: Feed me, Seymore - Supplemental User Data for IC Profiles

Case Sensitivity

Page 32: Feed me, Seymore - Supplemental User Data for IC Profiles

Directory

Page 33: Feed me, Seymore - Supplemental User Data for IC Profiles

LDAP

Page 34: Feed me, Seymore - Supplemental User Data for IC Profiles

map_dbrepos_from_source.properties

...calendarUrl=nullcountryCode=ccourtesyTitle=null

...

Page 35: Feed me, Seymore - Supplemental User Data for IC Profiles

User Interface

Page 36: Feed me, Seymore - Supplemental User Data for IC Profiles

profiles_functions.js

function func_country2lower(fieldname) { var result = work.getString("c");

result = result.toLowerCase(); return result;}

Page 37: Feed me, Seymore - Supplemental User Data for IC Profiles

map_dbrepos_from_source.properties

...calendarUrl=null

countryCode={func_country2lower}courtesyTitle=null

...

Page 38: Feed me, Seymore - Supplemental User Data for IC Profiles
Page 39: Feed me, Seymore - Supplemental User Data for IC Profiles

Aaaaand ….

Page 40: Feed me, Seymore - Supplemental User Data for IC Profiles

User Interface

Page 41: Feed me, Seymore - Supplemental User Data for IC Profiles

Almost There!

Page 42: Feed me, Seymore - Supplemental User Data for IC Profiles

fill_country.[bat|sh]

Page 43: Feed me, Seymore - Supplemental User Data for IC Profiles
Page 44: Feed me, Seymore - Supplemental User Data for IC Profiles

Aaaaand ….

Page 45: Feed me, Seymore - Supplemental User Data for IC Profiles

User Interface

Page 46: Feed me, Seymore - Supplemental User Data for IC Profiles

Work Location

Page 47: Feed me, Seymore - Supplemental User Data for IC Profiles

workloc.csv

lookupcode;addr1;addr2;city;state;zip

007;"76/78 Upper Ground";"South Bank";"Lambeth";"Greater London";”SE1 9PZ”

042;”Obere Donaustraße 95”;;”Vienna”;”Vienna”; “1020”

Page 48: Feed me, Seymore - Supplemental User Data for IC Profiles

fill_workloc.[bat|sh]

Page 49: Feed me, Seymore - Supplemental User Data for IC Profiles
Page 50: Feed me, Seymore - Supplemental User Data for IC Profiles
Page 51: Feed me, Seymore - Supplemental User Data for IC Profiles

Directory

Page 52: Feed me, Seymore - Supplemental User Data for IC Profiles

LDAP

Page 53: Feed me, Seymore - Supplemental User Data for IC Profiles

map_dbrepos_from_source.properties

...uid={func_map_to_db_UID}

workLocationCode=location# mode=

...

Page 54: Feed me, Seymore - Supplemental User Data for IC Profiles

Aaaaand ….

Page 55: Feed me, Seymore - Supplemental User Data for IC Profiles

User Interface

Page 56: Feed me, Seymore - Supplemental User Data for IC Profiles

Almost There!

Page 57: Feed me, Seymore - Supplemental User Data for IC Profiles

ProfileDetails.ftl

<@util.renderProperty ref="workLocationCode" dataId="workLocation" dataKey="city"nlsKey="label.workLocation.city" hideIfEmpty=true ;ref, dataId, dataKey, nlsKey, nlsBundle>…

</@util.renderProperty><@util.renderProperty ref="workLocationCode"

dataId="workLocation" dataKey="state"nlsKey="label.workLocation.state" hideIfEmpty=true ;ref, dataId, dataKey, nlsKey, nlsBundle>...

Page 58: Feed me, Seymore - Supplemental User Data for IC Profiles

ProfileDetails.ftl

<@util.renderProperty ref="workLocationCode"dataId="workLocation" dataKey="address1"nlsKey="label.workLocation.address1"

hideIfEmpty=true; ref, dataId, dataKey, nlsKey,nlsBundle><@util.renderValue ref=ref dataId=dataId

dataKey=dataKey/>,</@util.renderProperty>

Page 59: Feed me, Seymore - Supplemental User Data for IC Profiles

ProfileDetails.ftl

<@util.renderProperty ref="workLocationCode"dataId="workLocation" dataKey="address2"nlsKey="label.workLocation.address2"

hideIfEmpty=true; ref, dataId, dataKey, nlsKey,nlsBundle><@util.renderValue ref=ref dataId=dataId

dataKey=dataKey/>,</@util.renderProperty>

Page 60: Feed me, Seymore - Supplemental User Data for IC Profiles

ProfileDetails.ftl

<@util.renderProperty ref="workLocationCode"dataId="workLocation" dataKey="postalCode"nlsKey="label.workLocation.address1"

hideIfEmpty=true;ref, dataId, dataKey, nlsKey, nlsBundle><@util.renderValue ref=ref dataId=dataId

dataKey=dataKey/></@util.renderProperty>

Page 61: Feed me, Seymore - Supplemental User Data for IC Profiles

Aaaaand ….

Page 62: Feed me, Seymore - Supplemental User Data for IC Profiles

User Interface

Page 63: Feed me, Seymore - Supplemental User Data for IC Profiles

Organization

Page 64: Feed me, Seymore - Supplemental User Data for IC Profiles

orginfo.csv

lookupcode;name

23;"Chaos Computer Club"23;"h2g2"360;”IBM”

"RkReÜAÜG";"Rinderkennzeichnungs- und Rindfleischetikettierungsüberwachungsaufgabe

nübertragungsgesetz"

Page 65: Feed me, Seymore - Supplemental User Data for IC Profiles

fill_organization.[bat|sh]

Page 66: Feed me, Seymore - Supplemental User Data for IC Profiles
Page 67: Feed me, Seymore - Supplemental User Data for IC Profiles
Page 68: Feed me, Seymore - Supplemental User Data for IC Profiles

Directory

Page 69: Feed me, Seymore - Supplemental User Data for IC Profiles

LDAP

Page 70: Feed me, Seymore - Supplemental User Data for IC Profiles

map_dbrepos_from_source.properties

...nativeLastName=null

orgId=companynamepagerNumber=null

...

Page 71: Feed me, Seymore - Supplemental User Data for IC Profiles

Aaaaand ….

Page 72: Feed me, Seymore - Supplemental User Data for IC Profiles

User Interface

Page 73: Feed me, Seymore - Supplemental User Data for IC Profiles

Department

Page 74: Feed me, Seymore - Supplemental User Data for IC Profiles

deptinfo.csv

lookupcode;name

42;"Local Planning Department, Subdivision Alpha Centauri"

43;"Sirius Cybernetics Corporation Marketing Department"

Page 75: Feed me, Seymore - Supplemental User Data for IC Profiles

fill_department.[bat|sh]

Page 76: Feed me, Seymore - Supplemental User Data for IC Profiles
Page 77: Feed me, Seymore - Supplemental User Data for IC Profiles
Page 78: Feed me, Seymore - Supplemental User Data for IC Profiles

Directory

Page 79: Feed me, Seymore - Supplemental User Data for IC Profiles

LDAP

Page 80: Feed me, Seymore - Supplemental User Data for IC Profiles

map_dbrepos_from_source.properties

...courtesyTitle=null

deptNumber=departmentdescription=null

...

Page 81: Feed me, Seymore - Supplemental User Data for IC Profiles

Database

Page 82: Feed me, Seymore - Supplemental User Data for IC Profiles

Aaaaand ….

Page 83: Feed me, Seymore - Supplemental User Data for IC Profiles

User Interface

Page 84: Feed me, Seymore - Supplemental User Data for IC Profiles

Almost There!

Page 85: Feed me, Seymore - Supplemental User Data for IC Profiles

ProfileDetails.ftl

<@util.renderProperty ref="deptNumber" dataId="department"dataKey="departmentTitle"nlsKey="label.departmentDisplayValue" hideIfEmpty=true;

ref, dataId, dataKey, nlsKey, nlsBundle><@util.renderValue ref=ref dataId=dataId

dataKey=dataKey/> <br/> </@util.renderProperty>

Page 86: Feed me, Seymore - Supplemental User Data for IC Profiles

User Interface

Page 87: Feed me, Seymore - Supplemental User Data for IC Profiles

Still not done

Page 88: Feed me, Seymore - Supplemental User Data for IC Profiles

Although deptNumber is listed in the documentation, the field is actually not

defined in profiles-types.xml.

=> It will never display on UI.

Page 89: Feed me, Seymore - Supplemental User Data for IC Profiles

Profiles-type.xml

<property><ref>workLocationCode</ref><updatability>read</updatability><hidden>false</hidden>

</property> <property>

<ref>deptNumber</ref> <updatability>read</updatability> <hidden>false</hidden> </property>

Page 90: Feed me, Seymore - Supplemental User Data for IC Profiles

User Interface

Page 91: Feed me, Seymore - Supplemental User Data for IC Profiles

Business Card?

Page 92: Feed me, Seymore - Supplemental User Data for IC Profiles

Almost There!

Page 93: Feed me, Seymore - Supplemental User Data for IC Profiles

businessCardInfo.ftl

<@util.renderProperty ref="orgId" dataId="organization" dataKey="organizationTitle" nlsKey="label.organizationTitle" hideIfEmpty=true ; ref, dataId, dataKey, nlsKey, nlsBundle> <@util.renderValue ref=ref dataId=dataId dataKey=dataKey/>,&nbsp; </@util.renderProperty>

Page 94: Feed me, Seymore - Supplemental User Data for IC Profiles

businessCardInfo.ftl

<@util.renderProperty ref="deptNumber" dataId="department" dataKey="departmentTitle" nlsKey="label.departmentDisplayValue" ; ref, dataId, dataKey, nlsKey, nlsBundle> <@util.renderValue ref=ref dataId=dataId dataKey=dataKey/> <br/> </@util.renderProperty>

Page 95: Feed me, Seymore - Supplemental User Data for IC Profiles

businessCardInfo.ftl

<@util.renderProperty ref="workLocationCode" dataId="workLocation" dataKey="address1"

nlsKey="label.workLocation.address1" hideIfEmpty=true ; ref, dataId, dataKey, nlsKey, nlsBundle><@util.renderValue ref=ref

dataId=dataId dataKey=dataKey/>,</@util.renderProperty><@util.renderProperty ref="workLocationCode"

dataId="workLocation" dataKey="address2" nlsKey="label.workLocation.address2" hideIfEmpty=true ; ref, dataId, dataKey, nlsKey, nlsBundle><@util.renderValue ref=ref

dataId=dataId dataKey=dataKey/>,</@util.renderProperty>

Page 96: Feed me, Seymore - Supplemental User Data for IC Profiles

businessCardInfo.ftl

<<@util.renderProperty ref="workLocationCode" dataId="workLocation" dataKey="postalCode" nlsKey="label.workLocation.address1" hideIfEmpty=true ; ref, dataId, dataKey, nlsKey, nlsBundle><@util.renderValue ref=ref dataId=dataId dataKey=dataKey/></@util.renderProperty>

Page 97: Feed me, Seymore - Supplemental User Data for IC Profiles

Business Card?

Page 98: Feed me, Seymore - Supplemental User Data for IC Profiles

SEARCH

Page 99: Feed me, Seymore - Supplemental User Data for IC Profiles

SearchResults.ftl

<@util.renderProperty ref="deptNumber" dataId="department" dataKey="departmentTitle"

nlsKey="label.departmentDisplayValue" ; ref, dataId, dataKey, nlsKey, nlsBundle>

<div class='bidiAware'> <@util.renderValue ref=ref dataId=dataId

dataKey=dataKey/></div>

</@util.renderProperty>

Page 100: Feed me, Seymore - Supplemental User Data for IC Profiles

SearchResults.ftl

<@util.renderProperty ref="workLocationCode" dataId="workLocation" dataKey="address1"

nlsKey="label.workLocation.address1" hideIfEmpty=true ; ref, dataId, dataKey, nlsKey,

nlsBundle><div class='bidiAware'>

<@util.renderValue ref=ref dataId=dataId dataKey=dataKey/>,

</@util.renderProperty>

Page 101: Feed me, Seymore - Supplemental User Data for IC Profiles

SearchResults.ftl

<@util.renderProperty ref="workLocationCode" dataId="workLocation" dataKey="address2"

nlsKey="label.workLocation.address2" hideIfEmpty=true ; ref, dataId, dataKey, nlsKey,

nlsBundle><div class='bidiAware'>

<@util.renderValue ref=ref dataId=dataId dataKey=dataKey/>,

</@util.renderProperty>

Page 102: Feed me, Seymore - Supplemental User Data for IC Profiles

SearchResults.ftl

<@util.renderProperty ref="workLocationCode" dataId="workLocation" dataKey="postalCode"

nlsKey="label.workLocation.address1" hideIfEmpty=true; ref, dataId, dataKey, nlsKey, nlsBundle>

<@util.renderValue ref=ref dataId=dataId dataKey=dataKey/>

</@util.renderProperty>

Page 103: Feed me, Seymore - Supplemental User Data for IC Profiles

SEARCH

Page 104: Feed me, Seymore - Supplemental User Data for IC Profiles

METRICS

Page 105: Feed me, Seymore - Supplemental User Data for IC Profiles

Mapping user profile attributes to report dimensions

<userAttributesMappings><!--<mapping metricsName="attribute1"

profilesName="com.ibm.snx_profiles.base.countryCode"/><mapping metricsName="attribute2"

profilesName="com.ibm.snx_profiles.base.orgId"/><mapping metricsName="attribute3"

profilesName="com.ibm.snx_profiles.base.title"/>-->

<mapping metricsName="attribute1" profilesName="com.ibm.snx_profiles.base.countryCode"/><mapping metricsName="attribute2" profilesName="com.ibm.snx_profiles.base.workLocationCode"/>

<mapping metricsName="attribute3" profilesName="com.ibm.snx_profiles.ext.customAttribute"/>

</userAttributesMappings>

Page 106: Feed me, Seymore - Supplemental User Data for IC Profiles

Tools

Page 107: Feed me, Seymore - Supplemental User Data for IC Profiles

Codes Connector

Page 108: Feed me, Seymore - Supplemental User Data for IC Profiles
Page 109: Feed me, Seymore - Supplemental User Data for IC Profiles

Sync

Page 110: Feed me, Seymore - Supplemental User Data for IC Profiles

profiles-config.xml

<templateReloading>5</templateReloading>

Page 111: Feed me, Seymore - Supplemental User Data for IC Profiles

PITFALLS

Page 112: Feed me, Seymore - Supplemental User Data for IC Profiles

Draw a Blank

Page 113: Feed me, Seymore - Supplemental User Data for IC Profiles

Draw a Blank in ProfileDetails.ftl

<@util.renderProperty ...><@util.renderValue ref=ref dataId=dataId dataKey=dataKey/>, </@util.renderProperty>

Page 114: Feed me, Seymore - Supplemental User Data for IC Profiles

Draw a Blank

Page 115: Feed me, Seymore - Supplemental User Data for IC Profiles

Search vs. Search

Page 116: Feed me, Seymore - Supplemental User Data for IC Profiles

No Customization in “Search All Content → Limit to Profiles”

Page 117: Feed me, Seymore - Supplemental User Data for IC Profiles

Questions?

117

Martin Leyrer

IT-Specialist at IBM Austria

E-mail: [email protected]

Twitter: http://www.twitter.com/leyrer

FB: https://www.facebook.com/leyrer

Blog: http://www.leyon.at

Slideshare:http://www.slideshare.net/Martin.Leyrer

Page 118: Feed me, Seymore - Supplemental User Data for IC Profiles

Links

● Falsehoods programmers believe about addresses: https://www.mjt.me.uk/posts/falsehoods-programmers-believe-about-addresses/

● Country Codes - ISO 3166: http://www.iso.org/iso/country_codes

● Customizing Profiles: http://www.ibm.com/support/knowledgecenter/SSYGQH_5.5.0/admin/customize/c_admin_profiles_customizing.html

● CodesConnector: http://www.ibm.com/support/knowledgecenter/en/SSYGQH_5.5.0/admin/admin/t_admin_profiles_using_codes_connector.html

● Technote #1698402: Some users cannot be populated as PROF_PHYSICAL_DELIVERY_OFFICE limited to 32 characters: http://www-01.ibm.com/support/docview.wss?uid=swg21698402

Page 119: Feed me, Seymore - Supplemental User Data for IC Profiles

Links

● Supplemental user data for Profiles http://www.ibm.com/support/knowledgecenter/SSYGQH_5.5.0/admin/install/r_prof_fill-tables.html

● Mapping user profile attributes to report dimensions http://www.ibm.com/support/knowledgecenter/SSYGQH_5.5.0/admin/admin/t_admin_metrics_mng_map_report.html