Get Multi-column list from web service, present in RMP. How?

159 views
Skip to first unread message

mi...@mikeboysen.com

unread,
Dec 18, 2013, 11:04:43 AM12/18/13
to suppor...@runmyprocess.com
I want to pull a list of Tickets from a CRM system and display them on a RMP form (I'm just getting started). Given a known number of columns, what is the best way to present this? Can it be done so all columns and rows are editable? Can I return a list that hyperlinks to an edit form? Just not sure the best practice here.

Dimitri MELCHIOR Pro

unread,
Dec 19, 2013, 4:43:03 AM12/19/13
to RunMyProcess Support Forum
Hi mike,

It would be preferable to give us the CRM tool to get further in the response.

Anyway, you must :

1 - Create a Web interface and inject an Array widget in it.

Inline image 1

2 - Configure the columns of you array structure (admitting you have 2 columns in your Array column_1 and column_2 and that the array variable name is my_array)

Inline image 2Inline image 3

3 - Create a process with 1 single connector box which get list of items (connector depens on the CRM you are listing items from) (check in the left-side-bar section "Libraries" / Connectors to access our 1500 pre-configured connectors)

Inline image 4

4 - From your web interface, you must set up the newly created process as a process listener : http://docs.runmyprocess.com/Developer_Guide/Web_Interface/Design/Process_Listener

5 - Don't forget to transpose (in your process using freemarker below function) your structure because your connector will surely return you transpose (var_array): allows you to transpose a variable from a widget array from "column definition" to "line definition" or from "column definition" to "line definition". instead of my_array = {"column_1":["var_1"],"column_2":["var_2"]} expected by you widget.

transpose (var_array): allows you to transpose a variable from a widget array from "column definition" to "line definition" or from "column definition" to "line definition".

Best regards.

--

Dimitri MELCHIOR

PreSales Consultant

     

Fujitsu RunMyProcess user? Please add a review on GoogleApps Marketplace

Afin de contribuer au respect de l'environnement, merci de n'imprimer ce message qu'en cas de nécessité.
Be environmentally friendly: do not print this email unless it is entirely necessary.


On Wed, Dec 18, 2013 at 5:04 PM, <mi...@mikeboysen.com> wrote:
I want to pull a list of Tickets from a CRM system and display them on a RMP form (I'm just getting started). Given a known number of columns, what is the best way to present this? Can it be done so all columns and rows are editable? Can I return a list that hyperlinks to an edit form? Just not sure the best practice here.

--
Fujitsu - RunMyProcess
---
You received this message because you are subscribed to the Google Groups "RunMyProcess Support Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to supportforum...@runmyprocess.com.
To post to this group, send email to suppor...@runmyprocess.com.
Visit this group at http://groups.google.com/a/runmyprocess.com/group/supportforum/.
To view this discussion on the web visit https://groups.google.com/a/runmyprocess.com/d/msgid/supportforum/9369b038-fa14-4043-8aeb-38435d3234b3%40runmyprocess.com.
For more options, visit https://groups.google.com/a/runmyprocess.com/groups/opt_out.

image.png
image.png
image.png
image.png

mi...@mikeboysen.com

unread,
Dec 19, 2013, 7:51:53 AM12/19/13
to suppor...@runmyprocess.com
I've got all the operations for SalesLogix SData API and I would like to see what I can come up with. It's just one of many I would work with. Thanks.

Dimitri MELCHIOR Pro

unread,
Dec 19, 2013, 11:00:01 AM12/19/13
to RunMyProcess Support Forum
ok!

These connectors are not pre-configured onto RunMyProcess but you have the possibility to configure a provider and connectors by yourself.

Go to this page (http://community.saleslogix.com/t5/Developer-Web-Discussions/Updated-7-5-2-Sage-SalesLogix-API-Reference-documentation-now/td-p/7442), there you will see .zip folders you be able to search in for API References and configure your connectors accordingly.

Best regards.

--

Dimitri MELCHIOR

PreSales Consultant

     

Fujitsu RunMyProcess user? Please add a review on GoogleApps Marketplace

Afin de contribuer au respect de l'environnement, merci de n'imprimer ce message qu'en cas de nécessité.
Be environmentally friendly: do not print this email unless it is entirely necessary.


On Thu, Dec 19, 2013 at 1:51 PM, <mi...@mikeboysen.com> wrote:
I've got all the operations for SalesLogix SData API and I would like to see what I can come up with. It's just one of many I would work with. Thanks.
--
Fujitsu - RunMyProcess
---
You received this message because you are subscribed to the Google Groups "RunMyProcess Support Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to supportforum...@runmyprocess.com.
To post to this group, send email to suppor...@runmyprocess.com.
Visit this group at http://groups.google.com/a/runmyprocess.com/group/supportforum/.

Mike Boysen

unread,
Dec 19, 2013, 11:00:50 AM12/19/13
to supportforum
I've already built them. Thanks.




You received this message because you are subscribed to a topic in the Google Groups "RunMyProcess Support Forum" group.
To unsubscribe from this topic, visit https://groups.google.com/a/runmyprocess.com/d/topic/supportforum/E1BgZUxRO-Q/unsubscribe.
To unsubscribe from this group and all its topics, send an email to supportforum...@runmyprocess.com.

To post to this group, send email to suppor...@runmyprocess.com.
Visit this group at http://groups.google.com/a/runmyprocess.com/group/supportforum/.

Mike Boysen

unread,
Dec 19, 2013, 12:44:21 PM12/19/13
to supportforum
Dimitri,

Do you have some usage examples of transpose(array)? I believe I understand what you are saying, but it would help to see this in something real world. I'm returning a whole slew of fields represented line by line in XML. I only need a few of them and it sounds like what you are suggesting is the way I need to go. I'm just trying to piece this all together in my head and starting out is always a bit frustrating.

Dimitri MELCHIOR Pro

unread,
Dec 20, 2013, 4:39:19 AM12/20/13
to RunMyProcess Support Forum
Hi Mike,

This explained code gathers the most usual cases :

<#-- THIS FUNCTIONS GATHERS YOUR ENTRIES INTO 1 SINGLE ARRAY STRUCTURE -->
<#function get_array my_father my_son>
    <#if my_father?is_hash>
        <#if my_father[my_son]?exists>
            <#if my_father[my_son]?is_sequence>
                <#assign my_array = my_father[my_son]>
            <#else>
                <#assign my_array = [my_father[my_son]]>
            </#if>
        <#else>
            <#assign my_array = []>
        </#if>
    <#else>
        <#assign my_array = []>
    </#if>
    <#return my_array>
</#function>

<#-- LET'S CALL THE FUNCTION NOW -->
<#assign list_entries = get_array(P_result.feed,"entry")>

<#assign my_not_transposed_array = []>

<#-- WE LOOP ON ENTRIES, ADMITTING THAT WE HAVE 3 COLUMNS STORED IN DIFFERENT PATH OF THE WHOLE STRUCTURE -->
<#list list_entries as x>
<#assign column_1 = x.column_1> <#-- EASIEST WAY TO GET A VARIABLE, ENTRY IDs ARE OFTEN GETABLE THIS WAY -->
<#assign column_2 = x.title.@label> <#-- SOME VARIABLES COULD BE STORED IN A SUB STRUCTURE -->
<#-- SOMETIMES, VARIABLES ARE IN AN ARRAY YOU MUST LOOP ON -->
<#list x.link as y>
<#if y.@label == "column_3">
<#assign column_3 = y.@term>
</#list>
<#assign my_json>{"column_1":"${column_1}","column_2":"${column_2}","column_3":"${column_3}"}</#assign> <#-- THIS IS HOW WE DECLARE A JSON IN FREEMARKER --><#-- WE BUILD THE JSON THAT WILL BE INCREMENTED IN THE ARRAY -->
<#assign my_not_transposed_array = my_not_transposed_array + [my_json?eval]> <#-- WE INCREMENT OUR ARRAY -->
</#list>
<#-- WE EXIT A TRANSPOSED VERSION OF THE ARRAY TO FIT ARRAY WIDGET STANDARD FORMAT -->
${transpose(my_not_transposed_array)}

Best regards.

--

Dimitri MELCHIOR

PreSales Consultant

     

Fujitsu RunMyProcess user? Please add a review on GoogleApps Marketplace

Afin de contribuer au respect de l'environnement, merci de n'imprimer ce message qu'en cas de nécessité.
Be environmentally friendly: do not print this email unless it is entirely necessary.


Mike Boysen

unread,
Dec 29, 2013, 10:43:28 AM12/29/13
to supportforum
Dimitri,

Thanks for the example. I'm a little concerned that I have to man-handle xml/json to recordset conversions via code. I work with some other products that make this much easier; which is a big deal when working on many projects. Is there anything on the roadmap for simplifying this fairly common activity?

Mike Boysen

unread,
Dec 30, 2013, 3:07:54 PM12/30/13
to supportforum
Dimitri,

Do you have an example application that populates an array from a webservice? 

Mike Boysen

unread,
Dec 30, 2013, 4:33:46 PM12/30/13
to supportforum
One other question, is it possible to pull data from a webservice and store it in a collection?  can collections be dynamic like that; e.g. managed?

Dimitri MELCHIOR Pro

unread,
Jan 21, 2014, 3:19:06 PM1/21/14
to RunMyProcess Support Forum
Hi Mike,

This tutorial will explain you how to import data from a collection to an array widget whil that one will tell you more about API Listeners. Using these together, you should be able to get what you want.

Best regards.

--

Dimitri MELCHIOR

PreSales Consultant

     

Fujitsu RunMyProcess user? Please add a review on GoogleApps Marketplace

Afin de contribuer au respect de l'environnement, merci de n'imprimer ce message qu'en cas de nécessité.
Be environmentally friendly: do not print this email unless it is entirely necessary.


Dimitri MELCHIOR Pro

unread,
Jan 21, 2014, 3:14:44 PM1/21/14
to RunMyProcess Support Forum
Hi Mike,

You can populate your collections data with the information you want.
Best regards

--

Dimitri MELCHIOR

PreSales Consultant

     

Fujitsu RunMyProcess user? Please add a review on GoogleApps Marketplace

Afin de contribuer au respect de l'environnement, merci de n'imprimer ce message qu'en cas de nécessité.
Be environmentally friendly: do not print this email unless it is entirely necessary.


Reply all
Reply to author
Forward
0 new messages