Process hangs application

If you think that something doesn't work in Aware IM post your message here
Post Reply
vinsnash
Posts: 415
Joined: Sun Oct 07, 2007 4:58 pm

Process hangs application

Post by vinsnash »

I have a simple process to build a new object.

FIND NSCPers WITH NSCPers.MemberStatus = 'P'
Create
Pending WITH
Pending.Address=NSCPers.Address,
Pending.Age=NSCPers.Age,
Pending.BirthDate=NSCPers.BirthDate,
Pending.Branch=NSCPers.Branch,
Pending.City=NSCPers.City,
Pending.DateJoined=NSCPers.DateJoined,
Pending.DatePaid=NSCPers.DatePaid,
Pending.DateUpdated=NSCPers.DateUpdated,
Pending.ExpireDate=NSCPers.ExpireDate,
Pending.FirstName=NSCPers.FirstName,
Pending.Gender=NSCPers.Gender,
Pending.LastName=NSCPers.LastName,
Pending.MemberType=NSCPers.MemberType,
Pending.NextOfKin=NSCPers.NextOfKin,
Pending.SocialSecurityNumber=NSCPers.SocialSecurityNumber,
Pending.State=NSCPers.State,
Pending.UnitCode=NSCPers.UnitCode,
Pending.ZIP=NSCPers.ZIP,
Pending.HomePhone=NSCPers.HomePhone,
Pending.WorkPhone=NSCPers.WorkPhone

Why when I run it does it bring up a display of all instances and require that I select one before executing? The executing flash appears but the progress wheel is not spinning. When I use the close 'x' in the corner of the window the process appears to stop and returns to the configuration tool. When I close the configuration tool the control panel is gone. When I try to start again 'TomCat' doesn't start and I have to reboot the VPS to get everything back to normal.

Does the create have too many parameters?

Vins Nash
tford
Posts: 4238
Joined: Sat Mar 10, 2007 6:44 pm

Post by tford »

Why when I run it does it bring up a display of all instances and require that I select one before executing?
For your CREATE action, a single instance of NSCPers must be in context. So you either need to modify your FIND to get just one, or the user will be presented with a pick list like you experienced.

FIND NSCPers WITH NSCPers.MemberStatus = 'P' TAKE BEST ONE
Tom - V8.8 build 3137 - MySql / PostGres
vinsnash
Posts: 415
Joined: Sun Oct 07, 2007 4:58 pm

Post by vinsnash »

I spent a day working with this process and have have found the following:

1. There are four instances that satisfy the condition in NSCPers.
2. None get added to context but one is on the first page of that initial presentation.
3. I check the box on the header and the box on the last row is checked automatically.
4. On 'OK' the process starts, hangs, and crashes the control panel. When I try to start the control panel again it launches but TomCat goes to "Process Finished" immediately.
5. I have to reboot the server to get it back to normal.
6. I had twenty parameters in the Create Action (as in original post).
7. I reduced it to one and the Pending instance was created with the selected attribute set correctly to = the corresponding NSCPers attribute.
8. I added parameters to the Create action which worked until I reached #11. Then there was an "internal error" message.
9. I reduced the number back to 10 and the process worked for the 1 instance. I switched several parameters in the 10 spot to make sure the error wasn't related to a particular attribute. With any 10 it works with 11 there is an 'internal error'.

Knowing there are 4 instances that satisfy

FIND NSCPers Where NSCPers.MemberStatus = 'P'

How do I get them all in context for the process? The number of parameters possible on a create can be addressed latter but is critical.

Thanks for the help.
BobK
Posts: 546
Joined: Thu Jan 31, 2008 2:14 pm
Location: Cincinnati, Ohio, USA

Post by BobK »

If I understand you correctly, you have 4 NSCPers records with MemberStatus = 'P' and you want to create 4 Pending records.

In your process, on the General tab, do you have anything in the 'For this Process' column. I think this should be empty.

For your process try:

Find NSCPers WITH NSCPers.MemberStatus = 'P'
Create Pending FOR EACH NSCPers WITH Pending.Address=NSCPers.Address, (the rest of your attributes.)

This should get you 1 Pending record for each NSCPers.

Sorry, I do not have a solution for allowing to populate 11 or more attributes on the create action.
Bob
vinsnash
Posts: 415
Joined: Sun Oct 07, 2007 4:58 pm

Post by vinsnash »

OK!

I completely missed that "For Each" syntax. Wont' be the last I expect. Thank you!

Vins Nash
tford
Posts: 4238
Joined: Sat Mar 10, 2007 6:44 pm

Post by tford »

In addition to Bob's syntax, this will work:

Find NSCPers WITH NSCPers.MemberStatus = 'P' IN BATCHES OF 1
Create Pending NSCPers WITH Pending.Address=NSCPers.Address, (the rest of your attributes.)
Tom - V8.8 build 3137 - MySql / PostGres
vinsnash
Posts: 415
Joined: Sun Oct 07, 2007 4:58 pm

Post by vinsnash »

The problem is that the documentation leads one to believe that one should use the general tab process input window for selecting objects required for the process input.

I think the documentation was written by programmers. As a former application programmer I refused to write user documentation just for that reason.

That takes care of the crash with more than 10 parameters.

Thanks for the help!

Vins nash[/i]
Post Reply