Need help triggering a process flow via AGS and WFWK.1

 21 Replies
 0 Subscribed to this topic
 52 Subscribed to this forum
Sort:
Author
Messages
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
Friends,

I am working on a project involving invoking a process flow from AP160. I am trying to use an AGS call (like many have in here) and have not been having success. I tried to create a stub record in WFWK.1 so that if I call via the AGS call that it picks up. When I try to create the WFWK.1 record, it tells me that "EFTACH160 Service is not defined".

I know I am not doing something right, can someone explain and show me how to make a process flow web callable and how to AGS call works with the wfwk.1 record / program.

Thanks for all of your help in advance!
David Williams
Veteran Member Send Private Message
Posts: 1127
Veteran Member
Your error message seems to indicate that you didn't set up the EFTACH160 Servcie in ProcessFlow Administration. Is that correct?
David Williams
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
See, here is where I am not sure of things because our admins do all of that. Us developers dont access to those things so we can have audit trails showing our requests since we work with production data that gets dumped ot our development servers. I will make them privy to this thread to see if they can chime in between their schedule to get things moving along. Thanks David for the prompt response and here we go again bro !
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
They pointed the process flow to the wrong product line, so moved it. Now they need to enable the flow to be invoked via the web. Is there a setting in the PF Admin to do that? Or/And is that the same as setting it up as a service?
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
[quote]
Posted By ConsultDavidW on 09/08/2010 10:37 AM
Your error message seems to indicate that you didn't set up the EFTACH160 Servcie in ProcessFlow Administration. Is that correct?
[/quote]

See the attached. Are we missing something?

David Williams
Veteran Member Send Private Message
Posts: 1127
Veteran Member
You should leave the Data Area off unless you need to limit your Service to the one product line.
There are two other Service forms that need to be defined:
Service Criteria Level Definition
Service Process Definition
David Williams
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
[quote]
Posted By ConsultDavidW on 09/08/2010 11:40 AM
You should leave the Data Area off unless you need to limit your Service to the one product line.
There are two other Service forms that need to be defined:
Service Criteria Level Definition
Service Process Definition
[/quote]

We just have this deployed to that product line but will keep this in mind when we push this out. When my admin gets back form lunch we will work on this and chime back here on the boards.

But to just ask, if we set these up correct and everything and run our ags call, life should be generally good I hope if you can answer this question: My process flow has about 10 to 15 variables. In my AGS call, can I just add the variables that I want to populate from the web portal page and have success calling? What I want to do is pass in a company number and a date. I want to esnure that when the flow kicks off though, that it will use my values I pass it and not what is assigned in the Start node of the flow.

After this then we should have enough to move and make progress today!
David Williams
Veteran Member Send Private Message
Posts: 1127
Veteran Member
You don't have to pass all of the variables so that shouldn't be an issue. If you're not passing them, then why are they set up?
David Williams
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
[quote]
Posted By ConsultDavidW on 09/08/2010 11:55 AM
You don't have to pass all of the variables so that shouldn't be an issue. If you're not passing them, then why are they set up?
[/quote]

I know, I just wanted to ask to prevent headaches once I can get this thing working. So call it getting the dumas questions out now! Thanks, I will report back soon.
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
[quote]
Posted By Ward Mitchell on 09/08/2010 11:58 AM
[quote]
Posted By ConsultDavidW on 09/08/2010 11:55 AM
You don't have to pass all of the variables so that shouldn't be an issue. If you're not passing them, then why are they set up?
[/quote]

I know, I just wanted to ask to prevent headaches once I can get this thing working. So call it getting the dumas questions out now! Thanks, I will report back soon.
[/quote]

So we did setup some things but we still are getting the error Service not found on the WFWK.1. Check out the screenshot posted and let me know if we have something incorrect or not filled out. Thanks!



David Williams
Veteran Member Send Private Message
Posts: 1127
Veteran Member
Well, the Service Process Definition needs the Process Name added (that's your uploaded flow from PF Designer) and the Event Type should be EVT_FLOW.

Also, check your Portal Form WF01 to make sure it has LOGAN as the CCS product line.
David Williams
David Williams
Veteran Member Send Private Message
Posts: 1127
Veteran Member
I just noticed, on the Service Criteria Level Definition you need to add a blank record on line 1.

Select Add in the FC field and leave the other field values as they appear. Click Process.
David Williams
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
I did everything as specified and still no dice at this point.

The PF Service / Server is running
I did everything you listed DavidW

Is there something else we are missing?
David Williams
Veteran Member Send Private Message
Posts: 1127
Veteran Member
You updated all 3 Service Definition forms and checked the WF01 form value? Please send me your JavaScript code that triggers WFWK.
David Williams
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
[quote]
Posted By ConsultDavidW on 09/08/2010 02:25 PM
You updated all 3 Service Definition forms and checked the WF01 form value? Please send me your JavaScript code that triggers WFWK.
[/quote]

Check your email. Xml file is in txt file
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
Well we finally had some movement on this issue. All Process Flow services are now up and running. BUT, I am still getting the following:


Servlet Xpress reported: Missing required parameter: _TKN

com.lawson.ios.agent.AgentException: MISSING_PARAMETER
at com.lawson.util.eli.EliBaseServlet.getRequiredParameter(EliBaseServlet.java:66)
at com.lawson.servlet.Xpress.doGet(Xpress.java:170)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:751)
at com.lawson.ios.authen.SecureHttpServlet.service(SecureHttpServlet.java:40)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1146)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1087)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:118)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:837)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:680)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:588)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:524)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:751)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:125)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1818)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)

ConsultDavidW, you confirmed the files had the _TKN in the Ags call url on the button click event. So do you, or anyone else, have any ideas at this point?
David Williams
Veteran Member Send Private Message
Posts: 1127
Veteran Member
I sometimes get this error if I don't have my "return" call in the correct spot.
David Williams
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
Here is the section of code (minus other javascript functions) below. You had suggested that I set return true; like this. It seems as though the button click and AgS call runs but then once it hits WFWK.1 maybe, something is happening there where it may be expecting _TKN maybe? But code is below (I also emailed you a copy of the file as well at this time):



//call EFT ACH Advice Email Process Flow to execute
var sPFErrMessage="";
var sPFMessage="";

//NOTE: SEE FOR REFERENCE - https://www.lawsonguru.co...ft/6887/Default.aspx
var sPFURL=portalWnd.AGSPath+"?";
currentPDL="TMP";
sPFURL += "_PDL="+currentPDL;
sPFURL += "&_TKN=WFWK.1";
sPFURL += "&_EVT=ADD";
sPFURL += "&_RTN=DATA";
sPFURL += "&_LFN=ALL";
sPFURL += "&_TDS=IGNORE";
sPFURL += "&FC=Add";
sPFURL += "&SERVICE=EFTACH160";
sPFURL += "&WORK-TITLE=EFTACHAdviceEmail";
//sPFURL += "&PRODUCT-LINE="+currentPDL;
sPFURL += "&VARIABLE-NAMEr0=queryDate";
tmpValue=String(getTodaysDateAsMMDDYYYYString(dTempToday,"yyyymmdd"));
//tmpValue=String(String(dTempToday.getFullYear())+String((dTempToday.getMonth()+1<10 ? "0"+String(dTempToday.getMonth()+1) : String(dTempToday.getMonth()+1)))+String((dTempToday.getDay()<10 ? "0"+String(dTempToday.getDay()) : String(dTempToday.getDay()))));
tmpValue="20100903"; //REMOVE TO GO LIVE!!!
sPFURL += "&VARIABLE-VALUEr0="+tmpValue;
sPFURL += "&VARIABLE-NAMEr1=passedCompany";
sPFURL += "&VARIABLE-VALUEr1="+currentUSERCMP;
sPFURL += "&_DELIM=%09";
sPFURL += "&_OUT=TEXT";
sPFURL += "&_EOT=TRUE";
//alert("DIRTY sPFURL="+sPFURL);
//sPFURL = String(cleanDataStringForDMEQuery(sPFURL));
//alert("CLEAN sPFURL="+sPFURL);

//call process follow and return results accordingly
var oResponse=portalWnd.httpRequest(sPFURL);
if(!oResponse || oResponse.status)
{
sPFErrMessage="THE URL: "+sPFURL+" IS MALFORMED IN SOME MANNER. PF TRANSACTION CALL COULD NOT BE MADE AT THIS TIME ("+oResponse.status+")";
sPFMessage="ACH Advice Notifications have not been sent out successfully at this time for the following reasons:\n\n"+sPFErrMessage+"\n\nShould this issue persist, please contact Lawson Support for further assistance.";
}
else
{
sPFMessage="ACH Advice Notifications have been sent out successfully at this time!";
}
alert(sPFMessage);
return true;
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
FYI to the code above, the url runs and is successful is calling the url, shows the alert message "ACH Advice Notifications have been sent out successfully at this time!", but then after that it seems that the page redirects and then prompts the error message.

EDIT 945am: I am going to try a transaction query instead via https://www.lawsonguru.co...ft/6844/Default.aspx and see if this helps!
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
I even tried the transaction query as well, rather than a AGS URL Call, no dice either! Although I get the same error when I use the transaction query. So I know it is probably a configuration issue now, just not sure where!
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
it should be &_TKN not &TKN. Ah. So now I need to get emails to come!
Ward Mitchell
New Member Send Private Message
Posts: 0
New Member
So I looked at the IOS log and found the following; any ideas?

+++


2010-09-29 09:19:10,530 ERROR [FileMgr] com.lawson.ios.agent.AgentException: FILE_NOT_FOUND
2010-09-29 09:21:20,906 ERROR [FileMgr] com.lawson.ios.agent.AgentException: FILE_NOT_FOUND
2010-09-29 09:21:33,906 INFO [UIDef] getUIDefFileLoc called with prodline: TMP token: WF01.1 language: default customFormID: null
2010-09-29 09:21:42,422 INFO [ErpTransactionAgent] processing transaction: TMP/WF01.1
2010-09-29 09:21:47,984 INFO [ErpTransactionAgent] processing transaction: TMP/WF01.1
2010-09-29 09:21:57,875 INFO [UIDef] getUIDefFileLoc called with prodline: TMP token: WFWK.1 language: default customFormID: null
2010-09-29 09:22:12,953 INFO [ErpTransactionAgent] processing transaction: TMP/WFWK.1
2010-09-29 09:24:23,938 INFO [ErpTransactionAgent] processing transaction: TMP/WFWK.1
2010-09-29 09:25:07,048 ERROR [FileMgr] com.lawson.ios.agent.AgentException: FILE_NOT_FOUND
2010-09-29 09:25:07,220 INFO [UIDef] getUIDefFileLoc called with prodline: TMP token: WFWK.1 language: default customFormID: null
2010-09-29 09:25:17,017 ERROR [FileMgr] com.lawson.ios.agent.AgentException: FILE_NOT_FOUND
2010-09-29 09:25:21,720 INFO [UIDef] getUIDefFileLoc called with prodline: TMP token: AP160 language: default customFormID: null
2010-09-29 09:25:21,720 INFO [UIDef] getCustomUIDefXml called with prodline: tmp token: AP160 language: default customFormID: null
2010-09-29 09:25:23,986 WARN [FieldManager] [JOBNAME, DESCRIPTION]
2010-09-29 09:25:23,986 WARN [FieldManager] field not found in fhs: Type
2010-09-29 09:25:24,157 WARN [FieldManager] [JOBNAME, DESCRIPTION]
2010-09-29 09:25:24,157 WARN [FieldManager] field not found in fhs: Type
2010-09-29 09:25:28,517 INFO [ErpTransactionAgent] processing transaction: TMP/AP160
2010-09-29 09:25:34,408 INFO [ErpTransactionAgent] processing transaction: TMP/WFWK.1
2010-09-29 09:25:35,673 ERROR [Xpress]
com.lawson.ios.agent.AgentException: MISSING_PARAMETER
at com.lawson.util.eli.EliBaseServlet.getRequiredParameter(EliBaseServlet.java:66)
at com.lawson.servlet.Xpress.doGet(Xpress.java:170)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:751)
at com.lawson.ios.authen.SecureHttpServlet.service(SecureHttpServlet.java:40)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1146)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1087)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:118)
at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:837)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:680)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:588)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:524)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:751)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:125)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at com.ibm.ws.ssl.channel.impl.SSLReadServiceContext$SSLReadCompletedCallback.complete(SSLReadServiceContext.java:1818)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:196)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:751)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:881)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)
2010-09-29 09:27:13,596 INFO [ErpTransactionAgent] processing transaction: TMP/WFWK.1
2010-09-29 09:27:14,830 ERROR [Xpress]