Вы находитесь на странице: 1из 24

Pega Product Support: Ask the Expert -

Integration

Posted by Marissa Rogers Feb 9, 2016

Meet David:

Professional software architect and product manager with extensive experience in the design and development
of enterprise business and financial systems. Integrating all manners of disparate software applications for over
20 years, specializing in cloud and application layer integration and security. At Pega he provides customer-
driven product and architectural direction for the design and development of core Java-based business process
management and rules engine software applications the Pega 7 platform.
Message from David:

Im pleased to join the Product Support Community Ask the Expert event and welcome all of your integration
questions! Integration is part of our Information Experience area that also includes data management. Over
the course of the month I will be answering your questions. We certainly welcome comments on any integration
topic from how to make secure connections to your favorite REST service to the inside scoop on SAML 2.0 web
SSO. For questions that fall outside my areas of expertise we may direct you to other resources for answers.

Ask the Expert Rules:

Generated by Pega Mesh on 2016-07-01-05:00


1
Pega Product Support: Ask the Expert - Integration

Follow the Product Support Community's Community Rules of Engagement


This is not a Live Chat - David will reply to your questions over the course of this month-long event
Questions should be clearly and succinctly expressed
Questions should be of interest to many others in the audience
Have fun!

Do You Have a Question for David? Leave a Comment below!


David has a question for you! Check it out and answer this quick poll!
1976 Views Tags: integration, ask the expert

David Kircheis in response to Brendan Horan on page 2


Feb 29, 2016 1:29 PM
Thank you Brendan and many thanks to everyone who took the time to participate in "Ask the Expert"! We
really appreciate all of your questions and feedback - your input helps us continuously improve our products
and your experiences with them.

While this month's event has indeed come to a close (you got a bonus day this leap year! :-) please don't
hesitate to contact the Pega Support Community or myself with your integration questions and feedback.

Brendan Horan
Feb 29, 2016 11:49 AM
While there is still time left to submit any last minute questions, I wanted to take a moment to offer a HUGE
thank you to David Kircheis for making yourself available throughout the entire month of February to answer
PSC participant's questions.

As we mentioned at the start, this was our first time doing this and we didn't know what to expect going in.
Suffice it to say, this exceeded our expectations and has laid the groundwork for more sessions in the future.

Thanks for your time and effort, David.

B.

David Kircheis in response to Sunil Ojha on page 2


Feb 25, 2016 10:10 AM
Yes, you would need to use JMS unless you are willing and able to write your own custom Java client in Pega
to use AMQP messaging instead. We have discussed providing built-in support for AMQP but that is currently
not on our product roadmap. If you have any business use cases for it that you would like to share, that would
be great!

Generated by Pega Mesh on 2016-07-01-05:00


2
Pega Product Support: Ask the Expert - Integration

Sunil Ojha in response to David Kircheis on page 5


Feb 25, 2016 9:58 AM
Thanks David. So this has to be done through JMS integration in PRPC and not through MQ. Correct?

Regards
Sunil

David Kircheis in response to Ajith Appukuttan on page 3


Feb 25, 2016 8:53 AM
Please post your question on the Pega Support Community site for help with this. There is no built-in support
for Apache Kafka in Pega 7. The error message shown is coming from Kafka. Have you considered using the
Kafka REST api instead?

Ajith Appukuttan
Feb 24, 2016 4:52 PM
Hi David,

I am trying build a connector from Pega to Apache Kafka Queue. we are facing below issue while executing
the Java Connector. can someone from your team help me to figure out the issue.

Error Message:
WARN kafka.consumer.RangeAssignor .warn line 83 - No broker partitions consumed by consumer thread
chipsdspgroup3_ip-10-94-99-18.kdc.capitalone.com-1456329814264-18a23845-0 for topic chips_test_ei

Code Base:

1. java.util.Properties props = new java.util.Properties();

props.put("zookeeper.connect",zkeeper_connect);
props.put("zookeeper.session.timeout.ms", "400");
props.put("consumer.timeout.ms", "5000");
props.put("zookeeper.sync.time.ms", "200");
props.put("group.id", group_id);
1. props.put("topic.metadata.refresh.interval.ms","400");

//props.put("broker.partition.info",Broker_Id);
props.put("auto.commit.interval.ms", "1000");
props.put("partition.assignment.strategy", "range");
props.put("auto.offset.reset", "smallest");

Generated by Pega Mesh on 2016-07-01-05:00


3
Pega Product Support: Ask the Expert - Integration

try{

kafka.consumer.ConsumerConfig consumerConfig = new kafka.consumer.ConsumerConfig(props);


kafka.javaapi.consumer.ConsumerConnector consumer =
kafka.consumer.Consumer.createJavaConsumerConnector(consumerConfig);

String topic=KafkaTopic;

java.util.Map<String, Integer> topicCountMap = new java.util.HashMap<String, Integer>();

topicCountMap.put(topic, new Integer(1));

java.util.Map<String, java.util.List<kafka.consumer.KafkaStream<byte[], byte[]>>> consumerMap = consumer


.createMessageStreams(topicCountMap);

for (kafka.consumer.KafkaStream<byte[], byte[]> stream : consumerMap.get(topic)) {

kafka.consumer.ConsumerIterator<byte[], byte[]> it = stream.iterator();

while (it.hasNext()){

String messageId = new String(it.next().message());


ParameterPage newParamsPage = new ParameterPage();
newParamsPage.putString("Response",messageId );
HashStringMap hmActivityKeys = new HashStringMap();
hmActivityKeys .putString("pxObjClass", "Rule-Obj-Activity");
hmActivityKeys .putString("pyClassName", "COF-FW-CMSFW-Svc-KAFKA");
hmActivityKeys .putString("pyActivityName", "ProcessEachRecord");
tools.doActivity(hmActivityKeys , myStepPage,newParamsPage);

}
}
consumer.shutdown();
}

catch(Exception e)
{
Message += "Got Exception";
}

Generated by Pega Mesh on 2016-07-01-05:00


4
Pega Product Support: Ask the Expert - Integration

David Kircheis in response to Sunil Ojha on page 5


Feb 24, 2016 2:44 PM
Pega 7 provides standard JMS connectivity that is designed to work with any standard JMS provider. While I
have never used RabbitMQ, you will likely just need to import their JMS client libraries into Pega. This is what
is required when using ActiveMQ, a JMS provider that is frequently used with Pega applications.

Eric Osman
Feb 24, 2016 2:28 PM
>>> Consider situation when agent has to update work or data object which is locked at the processing time.

Take a look at the SLA agent configuration, since such a locking-contention is normal and expected. Very
often when an SLA tries to run, a user has the work locked, so the SLA needs to try again later. /Eric

Sunil Ojha
Feb 24, 2016 2:24 PM
Hi David,

We are exploring possibility of RabbitMQ integration in PRPC 7.1.9. Wanted to check if we can integrate with
rabbitMQ if yes what configurations needs to be done. Do we need specific libraries or jar file ? Any detailed
information will be on great help.

Thanks & Regards


Sunil

Andrey Kostikov
Feb 24, 2016 2:00 PM
Hello, David,

What is the Pega recommended way to deal with non-permanent error during agent processing?

Consider situation when agent has to update work or data object which is locked at the processing time.
What is preffered solution to make agent process work later when object may be released?

Also it's supposed to somehow resolve conflicts between deffered (previously failed) tasks and current tasks.

David Kircheis in response to Arjun Lath on page 6


Feb 24, 2016 1:12 PM

Generated by Pega Mesh on 2016-07-01-05:00


5
Pega Product Support: Ask the Expert - Integration

Please use the "Map from JSON" option for your REST service instead of using the getJSON() API directly to
avoid getting the pxObjClass values.

Arjun Lath in response to David Kircheis on page 6


Feb 24, 2016 12:48 AM
Hi David,

Our use case is that we will get a list of account numbers from the frontend application and we need to do
some decisioning on that and then return the response back. I was able to solve that problem using a post
method as I can pass a request body in POST method and not just the resource url with parameters as in the
case of GET method.

For the second scenario I checked the API's they are converting the response page into JSON by using the
function pxConvertPageToString and responding back with {"pxObjClass" : "Class Name"}. They are not
removing them. Please let me know if there is any way to remove the pxObjClass elements from the response
JSON.

Murali Kakarla in response to David Kircheis on page 6


Feb 23, 2016 10:38 PM
Thank you for quick response.

Could you also provide details on any potential issues that one may run into, if best practise of distinct ruleset
for each integration is not followed?

Regards,
Murali

David Kircheis in response to Arjun Lath on page 7


Feb 23, 2016 10:19 PM
Your service isn't really RESTful based on your description, have you consider /myRESTservice/accounts/
{accountNumber} instead? I'm not sure what your use case is but parameters in a query string should be
unique. How are you doing the JSON conversion? You should leverage Pega's built-in JSON apis - there
shouldn't be a need to write your own implementation.

Have a look at the Pega API - it may already provide the types of services you need and, if not, can serve as a
good reference for building your own services.

David Kircheis in response to Murali Kakarla on page 7


Feb 23, 2016 9:59 PM

Generated by Pega Mesh on 2016-07-01-05:00


6
Pega Product Support: Ask the Expert - Integration

You can certainly roll all rulesets including integration rulesets to a new version - it really depends on your
business and application. If your integration layer is fairly static (changes much less frequently than your app)
then this may not make sense for you. There are many great PDN articles about best practices for managing
rulesets such as this one.

Murali Kakarla in response to David Kircheis on page 20


Feb 23, 2016 8:31 PM
Hi David,

Could you please provide more details on potential issues that one may run into if best practise of distinct
ruleset for each integration is not followed? Is there any documentation of such best practices (similar to
guardrails recommended by Pega)?

The reason I am asking this is because I saw about 10 to 15 integrations in few customer applications.
Whenever new version for a ruleset has to be created we used to roll all application rulesets to same version
so as to avoid confusion in current ruleset versions across different environments (Dev, Test, UAT etc.). Now
if distinct ruleset is created for each integration is it a best practice to roll all integration rulesets as well to new
versions even when no changes to those integrations?

Thanks,
Murali

Arjun Lath
Feb 23, 2016 7:04 PM
Hi David,

I have two question with respect to REST Services. We are hosting a REST service in Pega.

1. Is there any way to pass a list of values into the GET method. For example if I want to pass multiple account
numbers as parameters to the GET method is that possible. When I tried it they are getting overwriiten
even when I map them like .Account<(APPEND>).AccountNumber. My resource url is something like this /
PackageName/ClassName/ServiceName?AccountNumber=123&AccountNumber=456

2. When I return the response from my REST Service a lot of pxObjClass values are also passed as I am
converting the response page into JSON and sending that back as response. Is there any way to remove the
pxObjClass values from the JSON response.

David Kircheis in response to Abbaya Chowdary on page 8


Feb 23, 2016 2:00 PM
Abbaya,

Generated by Pega Mesh on 2016-07-01-05:00


7
Pega Product Support: Ask the Expert - Integration

Thank you for the additional information. That identity server supports both the authorization code and client
credentials grant types. Please contact me directly to discuss the specific business use cases.

Abbaya Chowdary in response to David Kircheis on page 8


Feb 23, 2016 1:49 PM
Hi David, the client is using the following component wrapped in there solution and data store.We believe
REST services provided to us are with grant type "Resource Owner Password Credentials grant / password".
please advise if we have any workarounds.

https://identityserver.github.io/Documentation/docsv2/

https://github.com/IdentityServer/IdentityServer3

We discussed with Thomas in EDC today, and agreed to discuss with you on options.

Duy T Son in response to David Kircheis on page 8


Feb 23, 2016 12:47 PM
Thanks David this is perfect!

David Kircheis in response to Duy T Son on page 8


Feb 23, 2016 12:45 PM
Thank you for your question. Please see this article, if you have additional questions for features that aren't
integration specific, please post them to the Pega Support Community page.

Duy T Son
Feb 23, 2016 12:35 PM
Hello David,

How would I know when to use a Decision Table versus a Decision Tree?

- Ricky

David Kircheis in response to Sudheer Kumar Gandhe on page 9


Feb 23, 2016 9:31 AM
Hi Sudheer,

Generated by Pega Mesh on 2016-07-01-05:00


8
Pega Product Support: Ask the Expert - Integration

Thank you for the feedback on our new OAuth 2.0 features! Yes, we only support those two grant types at this
time.

Can you describe your business use cases of the Resource Owner grant type? Are there specific 3rd party
providers your client is integrating with, for example?

Nishan Ansari in response to David Kircheis on page 9


Feb 23, 2016 9:28 AM
Hi David,

Thanks for the response.


Yes, we have considered it but it's not feasible to do a smoke test in production environment. It amounts to us
tampering with the data.

-Nishan

David Kircheis in response to Nishan Ansari on page 9


Feb 23, 2016 9:22 AM
Hi Nishan,

Thank you for your question. Yes, it may be better to post in another topic area or just in the Pega Support
Community main page.

Have you considered executing quick smoke tests against all services after a JVM restart? This would (1)
ensure that the services are up and running correctly and (2) avoid the first-time delay you're seeing.

Sudheer Kumar Gandhe


Feb 23, 2016 9:12 AM
Hi David,

I have gone through your video on latest features of Pega 7.2 with respect to whats new in IX Integration which
is really nice. Regarding the OAUTH 2 authentication support provided in Pega 7.2. I understand that we are
supporting 2 grant types "Authorization Code Grant" and "Client Credentials Grant" out of 4 available grant
types available with OAUTH2. Do we have any solution or workaround to achieve "Resource Owner Password
Credentials Grant / password" grant type functionality in Pega 72? My Client is using this grant type for all their
applications and insisting Pega to use the same.

Regards,
Sudheer

Generated by Pega Mesh on 2016-07-01-05:00


9
Pega Product Support: Ask the Expert - Integration

Nishan Ansari
Feb 22, 2016 8:01 PM
Hello David,

After restarting Pega JVM's; when we hit any Pega service for the first time; it takes a lot more time to respond
than when we hit the service from the second time onwards. I understand that it could be because the
First Usage Assembly (FUA) files are getting built on first hit. What I want to know is how we can avoid this
slowness on the first hit ? I observed that using "static assembler" is one appraoch that reduces this slowness.
Is there any thing else that you could recommend.

I understand that this is not exactly an integration issue and may be inappropriate of me to ask it here ; but I
assumed that you must have come across such problems when pega is exposed as a service.

Thanks
Nishan

David Kircheis in response to Frederi Pochard on page 11


Feb 18, 2016 4:27 PM
Hi Frederi,

Yes, you are on the right path. If the non-Pega application is able to make REST calls then you should
seriously consider using the Pega API to process assignments and advance the flow.

David Kircheis in response to Saikat Chakrabortty on page 10


Feb 18, 2016 4:03 PM
Hi Saikat,

OK, given that you're just inserting records then, yes, having an activity do an Obj-Save in a loop on your
pagelist is the way to go. RDB- methods including RDB-Save are deprecated; use the External Database Table
Class Mappings and Obj-Save instead - no SQL connectors required.

Saikat Chakrabortty in response to David Kircheis on page 10


Feb 18, 2016 10:58 AM
Hi David,

Thanks for the response. We need to only insert in the table. We don't need to browse it. From page list need
to insert the values in the table records. SO each page in the pagelist would be one record.

-Saikat

Generated by Pega Mesh on 2016-07-01-05:00


10
Pega Product Support: Ask the Expert - Integration

David Kircheis in response to Saikat Chakrabortty on page 11


Feb 18, 2016 10:35 AM
Hi Saikat,

Instead of directly working with the older RDB methods, have you explored using data pages with Lookup
data sources? Our database table class mapping facility allows you to easily work with external tables without
having to write SQL.

Saikat Chakrabortty
Feb 18, 2016 7:27 AM
Hi David,

Is there any way to loop through a page list within connect sql (RDB-List or RDB-Save). I have an external
table and need to save records into it from a page list. Simple way would be looping in activity and calling RDB
as a child or build the sql statement through Java. But if we can loop within Connect sql that would be great.

If possible can you direct to the the syntax or give an example.

Thanks,
Saikat

Amit Kumar in response to David Kircheis on page 14


Feb 18, 2016 4:49 AM
Thanks David. I will explore more on the the lines of integrating based on SOAP/REST interfaces.

Frederi Pochard in response to David Kircheis on page 12


Feb 18, 2016 3:53 AM
Hello David.

So here are the requirements.


We're supposed to use Pega as the BPM engine while all the interactions with the users are provided by
another (non-Pega) application.
This non-Pega application is going to call the Pega application each and every time a step in the process
is done in order to have the workflow move forward (or backward). And the Pega application is expected to
answer with the name of the next step in the process to launch.
Roughly, we could say that the Pega application knows the workflow and the succession of assignments but
is not responsible for the assignments and the associated flow actions. While the non-Pega application only
knows the assignments and the associated flow actions but is not responsible for the way the assignments are
organized into a workflow.

Generated by Pega Mesh on 2016-07-01-05:00


11
Pega Product Support: Ask the Expert - Integration

Does it make enough sense ?


Just one last point: that logic is valid up until some point in the workflow where the Pega application is taking
over and is not relying on the non-Pega application for the interactions with users (from this point on, users will
be using regular portals and all).

So basically the idea is to structure the beginning of the flow, in its first stages/steps, using Assignment
Services.
Now what I understood from what you explained:
- an Assignment Service is a Assignment which is not existing in any worklist/workbasket (except maybe some
hidden technical one)
- it's basically a stopping point in the flow
- once such an Assignment Service is reached, a call to a connector is made and then the flow is waiting for
something to happen and make it advance again. And this "something" can either be some Service which is
called and is triggering one of the outbound flow actions defined on the Assignment Service, an SLA if such an
SLA is defined on the Assignment service or maybe a Ticket which is making the flow "jump" to somewhere
else.

Is guess my mistake is that I got it all wrong with the rule that is specified in the Assignment Service properties.
I was thinking it's the name of the service which the assignment is waiting for the call of.
While (and correct me if I'm wrong again) it's the connector the assignment service is calling before waiting for
something to happen.

So... am I on the right path this time?

David Kircheis in response to Marissa Rogers on page 13


Feb 17, 2016 5:03 PM
Hi,

It would be great to know your business use case regarding assignment service shapes as this isn't a widely
used feature.

That being said, I will address your questions in general. The Pega 7 help is currently the best resource for
details on assignment services.
Any type of outbound connector (SOAP, REST, ...) may be called from the assignment service
activity. By select "Rule Connect" as the Usage on the Security tab of the activity, you automatically
get key system parameters such as flowName passed in at runtime.
Once you have created a "Rule Connect" activity, you will be able to select it from the Type drop-
down in the assignment service shape properties.
The Service Wizard helps to generate integration service records such as SOAP services and also
expose existing flow actions as services - it is not directly related to service assignments.

Srinivas Komarina in response to David Kircheis on page 13

Generated by Pega Mesh on 2016-07-01-05:00


12
Pega Product Support: Ask the Expert - Integration

Feb 17, 2016 3:45 PM


Thanks David, i will try and let you know!

Regards,
Srinivas

David Kircheis in response to Srinivas Komarina on page 13


Feb 17, 2016 3:20 PM
Hi Srinivas,

Yes, use a Launch action on a button or link (icon) to open a harness or landing page as desired from the end
user portal.

Srinivas Komarina
Feb 17, 2016 2:56 PM
Hi David,

Greetings. We have a requirement to provide Surveys used in the application as a delegated rule to
administrator in a portal. I have seen Survey Management is within a Landing Page of Designer Studio, Is there
a way to add this to a portal (may be as a link).

Regards,
Srinivas

Marissa Rogers
Feb 17, 2016 1:12 PM
This was just asked on the Community board and thought it would be perfect for the Ask The Expert event, so I
contacted Frederi Pochard and got the go-ahead to re-post here:

I'm currently trying to figure out how to setup and use Service Assignments.
I don't think there is anything in the Pega Academy courses (but correct me if I'm wrong...) and the help entries
are very lightweight (and so not very helpful which is ironic).
And I can't find any "step-by-step" example anywhere.

So question is: is there any kind of how-to/help entry anywhere which is describing how to setup and use
Service Assignment (including how to setup the - SOAP? - Service to move out of the Service Assignment and
move along the flow)?

And if there is no such how-to/help entry, here are my precise questions/wonders:

Generated by Pega Mesh on 2016-07-01-05:00


13
Pega Product Support: Ask the Expert - Integration

- What kind of outbound connector do you have to create on a Service assignment? An empty one (that will be
used whenever the "right" service activity is called)? Or one or more connector(s) linked to Flow Actions (in that
case the service activity will have to invoke one of these Flow actions)?
- What is this "Type" property in the Assignment Service properties? It's supposed to be a "Rule Connect"
activity. But which one? One that has been created by the Service Accelerator (see below)?
- How do you use the Service Accelerator to create the Service that the Service Assignment is waiting for?
What's the right Service Purpose to use? "Create and manage work" or "Invoke existing activty rules"?

Really, once again, a step-by-step example (not necessarily detailed but with the main issues - concerning
Service Assignment, Service Accelerator and their relationship - covered) is what I'm looking for.

David Kircheis in response to Amit Kumar on page 14


Feb 17, 2016 8:50 AM
Hi Amit,

I don't believe we have any built-in integration with Adobe Omniture / Experience Manager. However, we do
have strong support for SOAP and REST connectivity in the Pega 7 Platform that you can use with Adobe
Data Connectors. In addition, with the Pega 7.2 release, we support OAuth 2.0 which Adobe uses for access
delegation.

Amit Kumar
Feb 17, 2016 6:02 AM
Hi David Kircheis

I would like to check if we have integration capability to integrate Pega marketing with Adobe Omniture and
share the assets with Adobe Experience Manager.

Thanks !!

David Kircheis in response to Saikat Chakrabortty on page 15


Feb 16, 2016 12:37 PM
Hi Saikat,

Great question! Yes, using a separate count(*) query to get the number of records (as mentioned in a response
to your prior mesh post) is certainly a viable approach and is also my best recommendation at this time.

David Kircheis in response to Prasanna Tuladhar on page 15


Feb 16, 2016 12:05 PM
Hi Prasanna,

Generated by Pega Mesh on 2016-07-01-05:00


14
Pega Product Support: Ask the Expert - Integration

Thank you for your questions.

As you know, Pega Web Mashup enables you to embed Pega 7 UI gadgets into your website. All Pega 7
security features for authentication and authorization are also available to secure Web Mashup gadgets.
Pega designer studio allows you to build and generate applications that are resistant to attack by default.
Additionally, the Pega gateway does session invalidation to mitigate "session fixation attacks". Application
servers including tomcat may also provide protection by renaming the session ID after authentication.

Deploying Web Mashup applications does require an understanding of web browser same-origin policy. In your
scenario the three unique partner websites would need to ensure that the Pega gadgets are presented in the
same origin as the main site. This can be done by deploying the Pega gateway into each partner site (as you
suggested) or by utilizing a network device to provide a local alias of the Pega 7 application.

Saikat Chakrabortty
Feb 16, 2016 8:07 AM
Hi David,

How can I get the no of record updated by rdb-save operation. I can see the number in DB-Trace but it does
not seems to stored in any parameter. Is there any way to get the number?

As an alternative we can have a rdb-list and get the count but this will increase one step and one more DB
connection. In{SQLpage:MySQLPage} also we only have pre and post SQL statement not the number of
records touched.

This is also applicable for RDB-delete.

Same question I asked in Mesh but not cleared.Please find the link here.

Thanks,
Saikat

Prasanna Tuladhar
Feb 12, 2016 2:23 PM
Hi David,

1. What are the security features built around webmashup to prevent unauthorized access and session fixation
attack. What other caution must a customer take when they expose Pega gadgets in Internet ?
2. If Several customer have their portal on different domains and wants to integrate webmashup (which is on
another partner site) do they need separate webmashup component to be installed on each of their domain

Generated by Pega Mesh on 2016-07-01-05:00


15
Pega Product Support: Ask the Expert - Integration

(due to same origin policy) ? To simplyfy partner1, 2 and 3 are in domains a, b, c and wants to access a pega-
gadget on domain d .

prasanth kumar in response to ravi mishra on page 16


Feb 12, 2016 1:43 AM
see i need to do it from a service we should not use the db here could anybody help me??

David Kircheis in response to Yogesh Raheja on page 16


Feb 11, 2016 3:13 PM
Hi Yogesh,

Thank you for the excellent suggestion of an AD integration guide!

As you probably know, Pega provides built-in features for integration with Microsoft Active Directory via LDAP.
We also support Single Sign-On with Active Directory Federation Services (ADFS) with our SAML web SSO
feature. You will find details of both of these options in the Pega help documentation for your product version.

As always, don't hesitate to post any specific questions you have about AD integration on the Pega Support
Community.

Regards,
David

Yogesh Raheja
Feb 11, 2016 2:13 PM
Can you publish step by step guide on Active Directory integration/authentication with screenshots?

ravi mishra in response to prasanth kumar on page 16


Feb 11, 2016 4:53 AM
No performance issue...
Only one time u need to save data in DB and using Datapage u need to fetch the list...
Do not load entire list once...Only country will come by default and based on country you load the state then
based on state load the district....

prasanth kumar in response to ravi mishra on page 16


Feb 11, 2016 4:16 AM
for example we have ten countries and each country has 1000 states and each state has 1000 districts then it
would we a performance hit saving all the data right ???

Generated by Pega Mesh on 2016-07-01-05:00


16
Pega Product Support: Ask the Expert - Integration

ravi mishra in response to prasanth kumar on page 17


Feb 11, 2016 4:07 AM
David replied ........No support.........
You can store in DB...I did this ...

prasanth kumar in response to ravi mishra on page 17


Feb 11, 2016 4:03 AM
see i dont have any data see for example in java we use third party api to get it so is there any process in pega
to do it??

ravi mishra in response to prasanth kumar on page 17


Feb 11, 2016 3:58 AM
if you have the list of States and District in DB then create a data page that use Report definition to get the
details.
If you have in list of States and Distric in any external system use connect-soap in Data page ...

prasanth kumar
Feb 11, 2016 3:43 AM
see i have req like the user enters the address once he selects the country in the drop down he should get
list of states and once he selects the state he should be able to get all the districts how can u do this with out
storing all the information in the data tables???

David Kircheis in response to Marissa Rogers on page 17


Feb 9, 2016 12:35 PM
There is no support in Pega 7 for those APIs.

Marissa Rogers
Feb 8, 2016 1:55 PM
Hi David,

Here's a question we received in the Community that we were hoping you could help with:

Does PEGA 7.1 interface directly with macros? We are looking to purchase a third party application that has
the interfaces for HHLAPI API, Macro API and Object API and I wanted to know if PEGA can interact with any
of these API's. Thanks!

pravin magar in response to David Kircheis on page 18

Generated by Pega Mesh on 2016-07-01-05:00


17
Pega Product Support: Ask the Expert - Integration

Feb 8, 2016 2:01 AM


Thanks David. I will post same question to Pega Product Support forum.

David Kircheis in response to pravin magar on page 18


Feb 5, 2016 8:35 AM
Hi Pravin,

This sounds like a good opportunity to engage Pega Support to better understand the details of your issue. The
best way to do this is to "Start a discussion" on the Pega Support Community. Thank you!

pravin magar
Feb 5, 2016 7:07 AM
Hello David,

We are facing issue with the connect SQL/RDB List call. In our application cases are being created using JMS
service/MQ Feed. We are making this RDB Call in routing
activity. This RDB call is failing certain scenarios Please find below are the some Working and non working
scenarios.

1. Non Working Scenarios


a. When the case is first time get routed to any workbasket (OR when case is updated by Integration user in
real time scenario )
Suspecting parameters are not getting set in store procedure,
2. Working Scenarios
a. When case is move by agent or person to other workbasket.

Generated by Pega Mesh on 2016-07-01-05:00


18
Pega Product Support: Ask the Expert - Integration

b. above mentioned non working scenario is also working fine if case is created from pega using JMS
service rule to post the message in pega.

Thanks,
Pravin

David Kircheis in response to Mehmet Emin Bodur on page 19


Feb 5, 2016 6:54 AM
Yes, in that release you will need to navigate to Application > Tools > All Wizards instead. Thank you.

Mehmet Emin Bodur in response to David Kircheis on page 20


Feb 5, 2016 4:46 AM
Hi again,

Thank you so much for your reply..


For Approach #1 there is no Designer Studio with the Integration > Tools > Wizard Cleanup tool. I upload a
secrrenshot, maybe there would be an alternative.

Generated by Pega Mesh on 2016-07-01-05:00


19
Pega Product Support: Ask the Expert - Integration

David Kircheis in response to Mehmet Emin Bodur on page 21


Feb 4, 2016 10:34 AM
This is an excellent question - thank you! Before I answer, let me provide some background information on
generation of integration records.

The generation of integration services, performed by using the new REST integration or other wizards, is
optimized by building upon your prior work. This directly supports the Pega "Built for Change" approach.

For example:
Create a new REST integration
Run the new REST integration wizard and generate your integration layer into the ruleset
"MyIntegration:01-01-01"
NOTE: As a best practice, use a distinct ruleset for each integration.

Update your REST integration


Ensure that your target integration ruleset "MyIntegration" is unlocked

Generated by Pega Mesh on 2016-07-01-05:00


20
Pega Product Support: Ask the Expert - Integration

Run the new REST integration wizard and generate your integration layer into the ruleset
"MyIntegration" and select (new version).

The result is that you now have two versions of MyIntegration (01-01-01 and 01-01-02). Any changes to the
REST integration will be reflected by the creation of new records in the 01-01-02 version.

This approach reduces the number of records required by each subsequent generation.

Now let's get back to your question:

There are two approaches to undo generation if the ruleset can be unlocked:

Approach #1 is to run the "undo generation" action on the last step of the new REST integration wizard for
that particular instance. You can view prior runs of the wizard in Designer Studio with the Integration > Tools >
Wizard Cleanup tool.

Approach #2 is is to simply delete the ruleset version you no longer want. In Designer Studio, select System >
Refactor > Rulesets > Delete a ruleset and pick the ruleset and version to remove. As explained in the above
example, the integration may have records in multiple ruleset versions. Deleting a version may necessitate
running the wizard again if critical records are removed. In addition, your ruleset may contain more than just
integration records - in this case Approach #1 can be followed.

If you cannot unlock the ruleset then you may need to refactor the records with System > Refactor > Rulesets
> Copy/Merge rulesets and/or generate the integration into a different class structure. You might choose
refactoring if you want to preserve and copy records generated earlier. The latter option would require an
update to your application to use the new class.

Mehmet Emin Bodur


Feb 4, 2016 9:14 AM
Hi,

How i can undo generation on integration services with locked versions (old versions). For example, i
developed something on 01.01, checked- in, and locked this version, then i opened a new version 01.02. Now i
want to undo generation on 01.01 but i dont know how it is possible?
Can you hep for this issue ?

David Kircheis in response to Tom Thomas on page 22


Feb 3, 2016 2:37 PM
Hi Tom,

Generated by Pega Mesh on 2016-07-01-05:00


21
Pega Product Support: Ask the Expert - Integration

There are several ways to enable your Pega 7 application to utilize information stored in a DMS or enterprise
content management (ECM) system. Most modern systems, including web/cloud storage providers, have
standard APIs - often REST based - that you can easily connect to using the REST integration wizard in
Designer Studio. It is often important to provide direct access from your Pega application to the user interface
of a DMS for things like content search and browsing. This can be done by customizing your Pega application
flows and sections to mashup such external UI content. Finally, Pega provides support for the CMIS standard
and has built-in facilities to use it for case attachments.

Tom Thomas
Feb 3, 2016 6:59 AM
Hi David,
I am looking for information/documentation regarding how Pega can be integrated with a Document
Management system (DMS) as opposed to storing documents within Pega itself. Would you be able to help?
Many Thanks
Tom

David Kircheis in response to Harish Reddy Adama on page 22


Feb 2, 2016 2:37 PM
Hi Harish,

Thank you for your participation today!

Yes, handling of data in excel files is a common requirement. While we don't have any plans at this time for
enhancing connector rules or wizards for handling excel documents, we are looking to make improvements in
the import and export of comma separated (.csv) data files. Also be sure to check out the Pega 7 feature for
the import/export of comma separated data records for any Data Type.

Harish Reddy Adama


Feb 2, 2016 12:59 PM
Hello David,

We see a lot of requirements around the excel documents generation and parsing. Do you have any plans in
making this integration easier like building out some Connect rules, Wizards?

David Kircheis in response to Jeremy Becker on page 23


Feb 1, 2016 1:35 PM
Hi Jeremy,

Welcome to "Ask the Expert" - congratulations to being our first participant!

Generated by Pega Mesh on 2016-07-01-05:00


22
Pega Product Support: Ask the Expert - Integration

As you know, there are many options for data and application layer integration with reporting solutions.
The Pega 7 platform has several built-in connectors including SQL and REST that can be used for direct
connectivity as well as tools like BIX for data export.

In regards to best practices, the approach you apply depends on several factors such as the volume of data,
business requirements, and data storage type and location. For example, if you need to generate monthly
reports for an application running on the Pega Cloud, exporting the application data using scheduled BIX
processes may be the best approach. On the other hand, if you have end-users that need the latest information
it is probably more suitable to employ RESTful web services for publishing the latest available data.

In the near future we will provide support for OAuth 2.0 enabled REST services for those reporting applications
that support that standard.

Other approaches employing protocols like SOAP and JMS continue to be used by many of our customers.
However we are seeing interest in them for new integrations dropping significantly - Google trends reflects this
as well:

** Image from Google Trends

Jeremy Becker
Feb 1, 2016 11:30 AM
Hey David,

Generated by Pega Mesh on 2016-07-01-05:00


23
Pega Product Support: Ask the Expert - Integration

With regard to integrating data into an existing reporting solution, are there any *best* practices around
establishing the design for the interface (delivery method, frequency, relevant data)? Messaging? SQL-based?
On change or scheduled? Are there any P7 or in process changes that may influence this in the future?

Generated by Pega Mesh on 2016-07-01-05:00


24

Вам также может понравиться