Identity Broker Forum

Welcome to the community forum for Identity Broker.

Browse the knowledge base, ask questions directly to the product group, or leverage the community to get answers. Leave ideas for new features and vote for the features or bug fixes you want most.

0
Answered

Cannot retreive schema for Chris21 DET connector

Jack Cheng 3 weeks ago in UNIFYBroker/Frontier ichris/chris21 • updated 1 week ago 7

Chris21 DET Connector is configured as follow:

However, retrieving schema failed with the below error in the log:

20190628,03:22:53,UNIFYBroker,Logging Engine,Information,Log file started.,Minimal
20190628,03:22:53,UNIFYBroker,Connector Engine,Error,"The schema for 'c21 DET Connector' connector was not updated for the following reason: System.AggregateException: One or more errors occurred. ---> System.ArgumentException: An item with the same key has already been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at Unify.Product.IdentityBroker.Chris21RecordtoChris21FieldDefinitionsAdapter.Transform(IChris21Record sourceValue, Boolean showTranslations)
at Unify.Product.IdentityBroker.Chris21Agent.d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Unify.Product.IdentityBroker.Chris21ConnectorBase.d__33.MoveNext()
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
at Unify.Product.IdentityBroker.Chris21ConnectorSchemaProvider.GetSchema(ISchemaProviderFactoryInformation factoryInformation)
at Unify.Product.IdentityBroker.ConnectorEngine.SchemaProviderResult(IOperationalConnector`1 operationalConnector, Func`2 selector, IEnumerable`1 appliedFields)
---> (Inner Exception #0) System.ArgumentException: An item with the same key has already been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
at Unify.Product.IdentityBroker.Chris21RecordtoChris21FieldDefinitionsAdapter.Transform(IChris21Record sourceValue, Boolean showTranslations)
at Unify.Product.IdentityBroker.Chris21Agent.d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Unify.Product.IdentityBroker.Chris21ConnectorBase.d__33.MoveNext()<---
",Normal

Same error with a new Unify.IdentityBroker database as well.

The Frontiner chris21 agent connects without any error.

Answer
Beau Harrison 1 week ago

Run the following in the GTR form in chris21. This will run the same query the connector uses to retrieve its schema.

cbr="componentlist",screen="DET"
0

Timeout on Chris 21 Connectors

Daniel Walters 1 month ago in UNIFYBroker/Frontier ichris/chris21 • updated 1 month ago 2

I'm getting timeouts on some Chris21 connectors. They seem to be intermittent, sometimes it works fine. Using v4.1.x Identity Broker and Chris21 connector. The error I get is as follows:

Are there any settings I can tweak on the IdB side to resolve this or is this Chris21 ending the connection early? I think there's a batch size setting or something similar but IdB is so slow to load with this customer I can't check again.

0
Answered

Chris21 Connector Failing - no status attribute

I'm getting the exact same error as in this ticket https://voice.unifysolutions.net/communities/6/topics/3223-import-all-entities-from-connector-chris21-secondment-connector-failed-with-reason-result-record

From the looks of things it's the exact same issue at the same customer. I don't know if Jerry ever resolved it. I've attached the log entry that's showing the error. It's using Idb and Chris 21 versions 4.1.x. Their Chris21 instance is version 8.16.17.

Adam suggested running some Chris 21 query as a resolution but I'm not sure where that query should be run. Is this likely to be a misconfiguration of Chris21 or something with IdB? This is in a test environment.

Please let me know if you need any more information.

0
Under review

Chris21 full import not completing

Matthew Davis (Engineering Manager) 3 months ago in UNIFYBroker/Frontier ichris/chris21 • updated 3 months ago 1

Chris21 full import is getting partway through and then blocking - no errors thrown, just doesn't complete.

It's only processing 23,000 entities out of a total of 114,000.

0
Answered

Any known issues with C21 upgrades?

HSF are upgrading their C21 instance over the weekend so I just wanted to check if there's any known issues with upgrades and the broker c21 connector. They say it's an Engine update, going to version 8.16.5. They're using Identity Broker version 4. Any known issues?

Answer

Hi Daniel,

None that I have been made aware of. As you haven't mentioned what version of the connector, or what version of chris21 they are upgrading from, just ensure that you're on the latest available connector, as there was a change to the way logons were performed quite some time ago that we had to update the connector for (logonapplication became an invalid argument). Additionally, as with any upgrade (and in line with Frontier advice), ensure that the integration is included in the upgrade and test plan.

Thanks.

0
Answered

time offset and sliding date window

Unify.Product.IdentityBroker.AdapterEnginePlugInKey.extensibility.config.xml

Hi,

I need some help with 2 items : time offset and sliding date window in IdB Adapter transformations for a customer. They have chris21 as the source system.

IdB version: 4.1

Q1: Sliding Date Window

When an employee starts on a new position from a specific date (i.e 05 June 2018) the data flows in the connector and the data transformation is applied a day earlier(i.e on 04th June 2018). The implication is the job title is changed the day before the correct date. the customer wants to know whats wrong.

The transformation as configured: 


Q2: Time offset

When a user is terminated in chris21, he gets a termdate set and a simple transformation is applied to set the terminated flag as "True"/"False". But for example if a user has term date is 02 july 2018, by logic, it should add 24 hrs and set terminated flag to "true" 03 july 2018 midnight, but the terminated flag is set to "true" only around mid next day(i.e 04 july 2018 midday). Need some help fixing this issue.



Please help me to know where the issue is, thanks. really appreciate and thanks in advance


I have attached the Adapter xml, if you want for reference. Thanks.


Answer
Beau Harrison 12 months ago

A1: What are the values for posstart and posend fields? A Broker Date field is a timestamp with the time component forced to 00:00:00, so even if the timestamp value from chris is 4-6-2018 23:59:59, the corresponding date value in Broker will be 4-6-2018. Use the offset fields to adjust.

A2: Looking at your configuration, the sliding date window from Q1 is configured for local date values but the time offset flag transformation is not. Figure out what the correct setting should be, then if the flag is still being set incorrectly, follow the same process from A1. Also, offset used should be whole days for date fields due to the explanation above.

0
Answered

Chris21 Writeback failed

Huu Tran 1 year ago in UNIFYBroker/Frontier ichris/chris21 • updated 1 year ago 24

Basically, Chris21 does not allow write null into 'detemailad' field but there is no mechanism in the connector to choose not to export null value (FIM does have this feature though). The error message:


20180119,23:59:52,UNIFY Identity Broker,Update,Error,"Chris 21
Exception occured after [00:00:00.7170553] duration.

System.IO.InvalidDataException: Result record has an invalid ""status"" attribute value.

status=""fail"" existing.
status=""ok"" expected. Line: GTR,F76U81 0    Y3661W25     5910 005U2YNI97 0 42:cbr=""DETupd"",detnumber=""506797"",detworkphone,detemailad,translation=""Ring A M"",dettitle=""Ms"",detsurname=""Ring"",detdatejnd=""2001-11-26"",detcontdat,detg1name1=""Anna"",detg1name2=""Marie-Jean"",detg1name3,detprefnm,detserdate=""2001-11-26"",detworkph,detbirdate=""1980-06-14"",detsex=""2"",detcntrynm=""1101"",detcitcd=""1101"",detcommence=""Z"",detmardate,detaltnbr,detbutton,detmarcd,detpaytype=""INB"",detusertag=""SHSSTEA"",detdatetag=""2015-08-27"",edegsuind=""Y"",detsupflag=""Q"",detwcsasrn,detmobile,detage=""0"",detservice=""0"",error01=""BRE085detemailad:Value may not be empty."",status=""fail""

Chris21 GTR returned no additional error messages.
   at Unify.Product.IdentityBroker.Chris21Agent.CheckStatusAttribute(IChris21CommandLine chris21GtrCommandLine)
   at Unify.Product.IdentityBroker.Chris21Agent.StandardResultCheck(IChris21Record resultRecord, String module, IChris21ConnectorInformation connectorRequest)
   at Unify.Product.IdentityBroker.Chris21Agent.<Update>d__1a.MoveNext()",Normal
20180119,23:59:52,UNIFY Identity Broker,UpdateEntity,Error,"Chris 21
Exception occured after [00:00:00.7170553] duration.

Answer

Hi Huu,

Upgrading may resolve this issue - the latest release includes a fix where entities were being "updated" (with no changes) in upstream systems even if no values were changed. With the latest version, the solution will not attempt to export changes for entities when their email hasn't changed.

0
Answered

Cannot retreive schema for Chris21 USR connector

Chris21 USR Connector is configured as follow:



However, retrieving schema failed with the below error in the log:


20180116,23:15:53,UNIFY Identity Broker,Connector Engine,Error,"The schema for 'Chris21 USR Connector' connector was not updated for the following reason: System.AggregateException: One or more errors occurred. ---> System.Exception: No schema fields retrieved for the configured form. Please confirm the connector configuration.
   at Unify.Product.IdentityBroker.Chris21ConnectorBase.<GetSchemaFields>d__42.MoveNext()
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
   at Unify.Product.IdentityBroker.Chris21ConnectorSchemaProvider.GetSchema(ISchemaProviderFactoryInformation factoryInformation)
   at Unify.Product.IdentityBroker.ConnectorEngine.SchemaProviderResult(IOperationalConnector`1 operationalConnector, Func`2 selector)
---> (Inner Exception #0) System.Exception: No schema fields retrieved for the configured form. Please confirm the connector configuration.
   at Unify.Product.IdentityBroker.Chris21ConnectorBase.<GetSchemaFields>d__42.MoveNext()<---
",Normal
20180116,23:15:53,UNIFY Identity Broker,Connector engine,Warning,"Request to retrieve schema provider application result.
Request to retrieve schema provider application result for connector 2851de9a-a6f5-4026-8f63-9c4637633001 failed with message One or more errors occurred.. Provider: Unify.Connectors.Frontier.Chris21.AllFields. Duration: 00:00:01.8901441
Error details:
System.AggregateException: One or more errors occurred. ---> System.Exception: No schema fields retrieved for the configured form. Please confirm the connector configuration.
   at Unify.Product.IdentityBroker.Chris21ConnectorBase.<GetSchemaFields>d__42.MoveNext()
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
   at Unify.Product.IdentityBroker.Chris21ConnectorSchemaProvider.GetSchema(ISchemaProviderFactoryInformation factoryInformation)
   at Unify.Product.IdentityBroker.ConnectorEngine.SchemaProviderResult(IOperationalConnector`1 operationalConnector, Func`2 selector)
   at Unify.Product.IdentityBroker.ConnectorEngine.SchemaProviderApplicationResult(String providerName, Guid connectorId)
   at Unify.Product.IdentityBroker.ConnectorEngineAuditingDecorator.SchemaProviderApplicationResult(String providerName, Guid connectorId)
   at Unify.Product.IdentityBroker.ConnectorEngineNotifierDecorator.SchemaProviderApplicationResult(String providerName, Guid connectorId)
   at Unify.Product.IdentityBroker.ConnectorEngineAccessor.SchemaProviderApplicationResult(String providerName, Guid connectorId)
   at Unify.Product.IdentityBroker.IdentityServiceCollector.SchemaProviderApplicationResult(String providerName, Guid connectorId)
   at SyncInvokeSchemaProviderApplicationResult(Object , Object[] , Object[] )
   at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)
   at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)
   at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
---> (Inner Exception #0) System.Exception: No schema fields retrieved for the configured form. Please confirm the connector configuration.
   at Unify.Product.IdentityBroker.Chris21ConnectorBase.<GetSchemaFields>d__42.MoveNext()<---
",Verbose

Answer

The field that chris21 is specifying as the key (usrlogonid) is missing from the set of returned field names. Could you please try the following request and let me know if the response changes?

cbr="componentlist",screen="USR",showtranslation="s"

If the key field comes through, update the show translation setting on the connector and try again.

0
Answered

How to export to other Chris21 table other than DET Connector

Huu Tran 1 year ago in UNIFYBroker/Frontier ichris/chris21 • updated 1 year ago 3

In the standard Chris21 configuration, I have DET connector is the base connector for Chris21 Adapter and I can make the field workPhone exportable (readonly box not ticked) --> All good!

In the Chris21 Adapter, there is a join transformation with POS connector in which the field detemailad is exportable. it is mapped to the ADEmail field in Adapter. However, ADEmail field in the adapter is read-only --> not exportable?

So if I want to write back to detemailad field, do I need to create a separate adapter which have POS connector as the base connector?

 

Answer
Huu Tran 1 year ago

It is a schema provider issue. I added "detemailad" to DET connector manually. Do import and data is polulated

0
Answered

Import all entities from connector Chris21 Secondment Connector failed with reason Result record does not contain the required "status" attribute.

Jerry Natarajan 2 years ago in UNIFYBroker/Frontier ichris/chris21 • updated by Daniel Walters 1 month ago 7

Unify Identity Broker: 4.1.x

Unify Identity Broker Connector for chris21  :v4.1.x

Getting this error while importing all from Secondment Connector

Detailed error:
status="ok" expected. Line GTR,S60W71E1R U1903R54 3812 177M33II26S1 03:cbr="zsmlst",sendfields="D",showtranslation="s",filter01="zsmenddate:GE:2017-06-06:or",filter02="zsmenddate:EQ::",maxlines="1000",detnumber="10122",detnumber.trn="Dare H",zsmstartdt="2012-10-01",zsmenddate,zsmscdmthr="35.00",zsmcompany,zsmreptnam,zsmexplnth,zsmchgrate="
Chris21 GTR returned no additional error messages.. Duration: 00:00:02.4782478
Error details:
System.IO.InvalidDataException: Result record does not contain the required "status" attribute.
status="ok" expected. Line GTR,S60W71E1R U1903R54 3812 177M33II26S1 03:cbr="zsmlst",sendfields="D",showtranslation="s",filter01="zsmenddate:GE:2017-06-06:or",filter02="zsmenddate:EQ::",maxlines="1000",detnumber="10122",detnumber.trn="Dare H",zsmstartdt="2012-10-01",zsmenddate,zsmscdmthr="35.00",zsmcompany,zsmreptnam,zsmexplnth,zsmchgrate="
Chris21 GTR returned no additional error messages.
at Unify.Product.IdentityBroker.Chris21Agent.CheckStatusAttribute(IChris21CommandLine chris21GtrCommandLine)
at Unify.Product.IdentityBroker.Chris21Agent.ExtractListResult(ICollection`1 entities, IChris21Record record, IChris21ConnectorInformation connectorRequest)
at Unify.Product.IdentityBroker.Chris21Agent.<listwithchunking>d__4.MoveNext()
at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
at Unify.Framework.Collections.ActionOnExceptionEnumerator`1.MoveNext()
at Unify.Framework.Collections.EnumerableExtensions.<actiononlast>d__10`1.MoveNext()
at Unify.Framework.Collections.EnumerableExtensions.<produceautopages>d__7`1.MoveNext()
at Unify.Framework.Visitor.ThreadsafeVisitorEvaluator`1.Visit()
at Unify.Product.IdentityBroker.RepositoryChangeDetectionWorkerBase.PerformChangeDetection(IEnumerable`1 connectorEntities)
at Unify.Product.IdentityBroker.ChangeDetectionImportAllJob.ImportAllChangeProcess()
at Unify.Product.IdentityBroker.ChangeDetectionImportAllJob.RunBase()
at Unify.Framework.DefinedScopeJobAuditTrailJobDecorator.Run()
at Unify.Product.IdentityBroker.ConnectorJobExecutor.<>c__DisplayClass27_0.<run>b__0()
at Unify.Framework.AsynchronousJobExecutor.PerformJobCallback(Object state)</run></produceautopages></actiononlast></listwithchunking>


The emp id of 10122 terminated 30/6/2015. Not sure if this helps?

Also this particular secondment record has no end date

Answer
anonymous 2 years ago

The connector checks that there is a status="ok" in each entry. I can't see how end date could have any impact on this. Try running the query in the GTR form for a couple of different forms and compare the output.