Developer Programs

Learn

Docs

CRMCustDsp Hyperlink

Tutorials > CRMCustDsp Hyperlink

Synapsys offers a screen pop by making a hyperlink call through the XCA. The CRMCustDsp message is the only Synapsys XperienceMessageBus message and the CustId (CIF#) is the only option. When the CRMCustDsp message is sent to Synapsys in Xperience, it will display a customer on the Synapsys 10-Second View.

The message should be formatted as such:

CRMCustDsp message
jhaXp:Instance=yourXPInstanceName&amp;Msg=<CRMCustDsp xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://jackhenry.com/jxchange/JES/2008"><XPMsgRqHdr><XPHdr>
<InstRtId>yourABA</InstRtId></XPHdr></XPMsgRqHdr><CustId>CIF#</CustId></CRMCustDsp>&amp;

Here is an Angular example

Angular example
import { Component } from '@angular/core';
import * as he from 'he';
import { Logger } from '@nsalaun/ng-logger';

@Component({
  styleUrls: ['./crm-cust-dsp.component.scss'],
  templateUrl: './crm-cust-dsp.component.html',
})
export class HyperlinkCRMCustDspComponent {
  private _xmlns: string;
  aba: string;
  cust: string;
  instance: string;
  abaString: string;
  custString: string;
  instanceString: string;

  constructor(private logger: Logger) {
    this._xmlns = 'xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://jackhenry.com/jxchange/JES/2008"';
  }

  createHyperlink(): void {
    if (this.aba?.length > 0 && this.cust?.length > 0 && this.instance?.length > 0) {
      // Override the global default setting:
      he.encode.options.useNamedReferences = true;

      if (this.instance && this.instance.length > 0) {
        this.instanceString = 'jhaXp:Instance=' +
          this.instance +
          '&Msg=<CRMCustDsp ' +
          this._xmlns + '>' +
          '<XPMsgRqHdr><XPHdr>';
      }

      this.aba = (this.aba && this.aba.length === 9) ? this.aba : '011001276';
      this.abaString = '<InstRtId>' + this.aba + '</InstRtId>' +
        '</XPHdr></XPMsgRqHdr>';

      if (this.cust && this.cust.length > 0) {
        this.custString = '<CustId>' + this.cust +
          '</CustId></CRMCustDsp>&amp;';
      }

      const link: string = he.encode(this.instanceString + this.abaString + this.custString,
        {
          strict: true,
        },
      );

      this.logger.log(link);
      document.getElementById('link').setAttribute('href', link);
      document.getElementById('string-link').innerHTML = link;
    }
  }
}

Did this page help you?

Last updated Mon Dec 9 2024