Home | Forums | Contact | Search | Syndication  
 
 [login] [create account]   Tuesday, November 26, 2024 
 
slxdeveloper.com Community Forums  
   
The Forums on slxdeveloper.com are now retired. The forum archive will remain available for the time being. Thank you for your participation on slxdeveloper.com!
 Web Forums - SalesLogix Web Platform & Application Architect
Forum to discuss the use of the SalesLogix Web Platform, Client and Customer Portals, and the Application Architect (For version 7.2 and higher only). View the code of conduct for posting guidelines.
Forums RSS Feed


 Back to Forum List | Back to SalesLogix Web Platform & Application Architect | New ThreadView:  Search:  
 Author  Thread: Showing SmartParts with DialogService
Eric J. Van Winkle
Posts: 21
 
Showing SmartParts with DialogServiceYour last visit to this thread was on 1/1/1970 12:00:00 AM
Posted: 04 Sep 07 9:07 AM
I've been trying to find a workaround for the unsupported Forms action for Sales Processes in the web client.
First of all, in OpportunitySalesProcess.ascx.resx, changing the "MSG_WebFromsNotSupported" name to "MSG_WebFormsNotSupported" will at least show the correct message, "Web Forms are no longer supported."
That done, I've been playing with the DialogService functions ShowMessage and SetSpecs with ShowDialog.
I've added my SmartParts to the Opportunity Detail page and I call DialogService.SetSpecs(150, 150, 600, 400, "ClientSatReportEntry"), where "ClientSatReportEntry" is the Smart Part ID of the SmartPart. Following this with DialogService.ShowDialog() should, as near as I understand, display the form in a format that looks like a modal dialog box. This is precisely the functionality I want.
What I get, however, is something different. The ShowMessage function works as expected, or not at all. The ShowDialog function will render a box of the specified size with an "X" to close, but no form, or it does nothing.
As to nothing happening, I assume the DialogService is not initialized, but I can't figure out when that gets initialized. Similarly, I suspect the SmartPart has to be added to the page, like Page.LoadControl() in a typical ASP.Net application using dynamically added user controls, but I can't find the method to do it.
Any suggestions?
Thanks,
Eric
[Reply][Quote]
Ryan Farley
Posts: 2265
slxdeveloper.com Site Administrator
Top 10 forum poster: 2265 posts
 
Re: Showing SmartParts with DialogServiceYour last visit to this thread was on 1/1/1970 12:00:00 AM
Posted: 04 Sep 07 12:15 PM
You are correct that the smartpart does need to be added to the page in order to show it, whether using the dialog service or some other means. To add it, simply open the page under the portal and then add the smartpart to the page. You can also specify there to add the SmartPart to the DialogWorkspace as well.
[Reply][Quote]
Eric J. Van Winkle
Posts: 21
 
Re: Showing SmartParts with DialogServiceYour last visit to this thread was on 1/1/1970 12:00:00 AM
Posted: 04 Sep 07 1:04 PM
Thanks, Ryan. I've done this, actually. Here's the detail:

I created an Entity and a series of associated forms in a new package.

The Smart Part is added to the Opportunity Detail page in the Sage SalesLogix portal.
Smart Part ID: ClientSatReportEntryForm
Smart Part: Client Satisfaction Report Entry Form
Title: Client Satisfaction Report Entry Form
Target Workspace: DialogWorkspace
Show In Mode: Detail (I've also tried Insert)

I modified the actionType switch in the executeAction function on OpportunitySalesProcess_ClientScript so that the 'Form' case now reads:
ProcessAction.prototype.Init = Init_Form;
boolExecute = true;
break;

I created the Init_Form function in the same js file to read as follows:
this.selectWithOption = '';
this.selectForOption = '';
this.selectForValue = '';
this.IsInit = true;
this.Execute;

Then, I've modified the actionType switch in the DoAction function in the OpportunitySalesProcess.ascx.cs so that the 'FORM' case reads as follows:
DialogService.SetSpecs(150, 150, 600, 400, "ClientSatReportEntry");
DialogService.ShowDialog();
result = DoWebForm(spAudit);
break;
I placed it there just to test the functionality, because DialogService does not seem to do anything when called from DoWebForm.

When I run SalesLogix in the web client, navigate to an Opportunity, select the sales process and click a step associated with a "Form" action, a dialog box appears of the correct dimensions, but it does not show the Smart Part.

I believe if I can get this working I'll be ready to rock to implement a long list of business processes and other customizations my company requires, but I can't get my mind around why it isn't working so far.
Thanks again,
Eric
[Reply][Quote]
Eric J. Van Winkle
Posts: 21
 
Re: Showing SmartParts with DialogServiceYour last visit to this thread was on 1/1/1970 12:00:00 AM
Posted: 05 Sep 07 12:05 PM
Okay, I have no idea what changed. After a couple of days of brute-force debugging it works! I'm pretty sure I made some change to every detail listed above and have changed them back. Certainly, I can confirm the current state is exactly as I described it above.
Have the gremlins fled? Did the web-development gnomes sneak in and fix something? I don't know, but thanks, Ryan, for affirming for me that my approach was correct.
[Reply][Quote]
 Page 1 of 1 
  You can subscribe to receive a daily forum digest in your user profile. View the site code of conduct for posting guidelines.

   Forum RSS Feed - Subscribe to the forum RSS feed to keep on top of the latest forum activity!
 

 
 slxdeveloper.com is brought to you courtesy of Ryan Farley & Customer FX Corporation.
 This site, and all contents herein, are Copyright © 2024 Customer FX Corporation. The information and opinions expressed here are not endorsed by Sage Software.

code of conduct | Subscribe to the slxdeveloper.com Latest Article RSS feed
   
 
page cache (param): 11/26/2024 4:04:38 AM