iSeller Commerce
iSeller POS Retail
iSeller POS F&B
iSeller POS Express
Crosslight
WebUI
ClientUI
What's New
Download Trial
Web Solution
Mobile Solution
Enterprise Solution
Custom Development
Blog
Community
Latest Development Blogs
ForumPostTopic
Browse By Tag
When we do export the webscheduler with the following code:ISNet.WebUI.WebScheduler.Report.WebSchedulerReportInfo info = new ISNet.WebUI.WebScheduler.Report.WebSchedulerReportInfo();info.FileName = "WebSchedulerToPdf.pdf";this._eventsScheduler.ViewSettings.SelectedViewMode = WebSchedulerViewMode.Month;this._eventsScheduler.ExportScheduler(info);we get the error:Specified argument was out of the range of valid values.Parameter name: valueStack:at System.Web.UI.WebControls.FontInfo.set_Size(FontUnit value)at .?.?()at .?.?()at ..CreateReport()at ..CreateReport()at ISNet.WebUI.WebScheduler.Report.WebSchedulerReportHelper.?()at ISNet.WebUI.WebScheduler.Report.WebSchedulerReportHelper.CreateReport()at ISNet.WebUI.WebScheduler.WebScheduler.ExportScheduler(WebSchedulerReportInfo ?[1], WebSchedulerReportOutputPathType ?[1])
Hi Alexandre,
I tried to replicate your issue in our sample. Unfortunately, I couldn't replicate this issue in our local end. As you can see in our sample (Exporting_ServerSide.aspx), it using the same method that you mentioned before except the SelectedViewMode changing. But when I applied that code in our sample, exporting executed perfectly. Is there any steps of configuration that you used to replicate this issue in your local? Maybe some steps or sample will help us to determine where this problem comes from. Look forward to hear any feedback from you so I can help you further.
Regards,Bernard
Hi Alex,
Sorry for our late responses. I have found where all those issue comes from.
For your first issue, it says that value of FontSize is out of range. This problem happen because when reporting our WebScheduler use 3rd party assembly to export WebScheduler. So it has limited capability to change the style in WebScheduler. However, you can resolve this by comment these line in SigmaScheduler.cs
this.ViewHeaderStyle.Normal.CssClass = "SchedulerViewHeaderStyleNormal"; this.SchedulerFrameStyle.CssClass = "SchedulerFrameStyle"; this.MonthInboundDateHeaderStyle.Normal.CssClass = "SchedulerMonthInBoundDateHeaderStyleNormal"; this.MonthOutboundDateHeaderStyle.Normal.CssClass = "SchedulerMonthOutboundDateHeaderStyle"; this.TimelineContentCellStyle.CssClass = "SchedulerContentCell"; this.CalendarFrameStyle.CssClass = "SchedulerCalendarFrameStyle"; this.CalendarHeaderStyle.CssClass = "SchedulerCalendarHeaderStyle"; this.CalendarTableStyle.CssClass = "SchedulerCalendarTableStyle"; this.CalendarSelectedCellStyle.CssClass = "SchedulerCalendarSelectedCellStyle";
For the second issue, this issue happen because WebScheduler_Year.js couldn't be load because you couldn't show Year view in your scheduler. You could load the js or enable year view in scheduler. But it will be better to enable Year View so it won't make error in our API.
For the third issue, actually, we can replicate this issue in our local end and we consider this as bug. We will fix it soon and add this as Hotfix. In while, you could put ISDataSource runtime license key in your project to resolve this issue.
Hope this helps.
Maybe if you want to keep your style in your project. You could override the CSS that WebScheduler using important css. For example, you could change month font color by using this css:
.WSB1_MIDH-N { color: red !important; font-size: 14px !important; }
Also by using this method, it won't bother our API to export WebScheduler into PDF. Hope this helps.
This method is same like your method to apply the css inside WebScheduler. But if you're using your method, you should set all style in your css to replace our style that you defined in WebScheduler.css (you couldn't set background color only or etc). Although, with this method the style couldn't be read in our server side.
To resolve this issue, you could change some of the style in style tag. With this method, our exporting API could read the css for its default style. Regarding to your sample, here's the class name that you should override:
SchedulerViewHeaderStyleNormal: WSB1_VH-N SchedulerFrameStyle: WSB1_SchedulerFrameStyle SchedulerMonthInBoundDateHeaderStyleNormal: WSB1_MIDH-N SchedulerMonthOutboundDateHeaderStyle: WSB1_MODH-N SchedulerContentCell: WSB1_TimelineContentCellStyle SchedulerCalendarFrameStyle: WSB1_CalendarFrameStyle SchedulerCalendarHeaderStyle: WSB1_CalendarHeaderStyle SchedulerCalendarTableStyle: WSB1_CalendarTableStyle SchedulerCalendarSelectedCellStyle: WSB1_CalendarSelectedCellStyle
You could specify the report path on Export server side event. Here's the snippet code:
e.ReportInfo.IISReportPath = "/SchedulerReport/";
Please let me know if you have any further question regarding this matter. Hope this helps.
I think it need to create a temporary file so it can be sent to the browser. However after you send the file, you could delete the file in your temporary folder. Hope this helps.
Do you think you can develop a method that will only create a filestream?
After that we could either send ti to the browser ourselve or just save the file in a database instead of saving it on disk.
I think this scenario couldn't be achieved in our WebScheduler because it is using ActiveReport engine to perform its export mechanism. However, we couldn't change its mechanism so I think WebScheduler still need a temporary folder to perform its exporting. Maybe, you could delete the file in temporary folder after you download the file. Hope this helps.
We could change the exporting method like you tell us before. But we couldn't implement this method in our control because it will change all of our exporting mechanism. Actually, the result is will be the same between our method and stream method in exporting. By using our exporting method, it will create the file and it will prompt to download the file. After you download the file, the file will be deleted in your temporary folder. Is there any problem when you're using temp folder in your local end? I'll let our developer know any feedback that you gave to us. Hope this helps.
Hi Bernard,
There is a security issue having to save the file in a temporary folder. This way, the report is available to anyone who will fall on that URL (even if it is for a short period of time) and then potentially leads to confidential information leak.
This is the major issue.
Another issue is that we need to give Write access to a folder under the web application. This is not a good practice.
Regards,
Alex
Maybe, you could give permission for each user to enable the export method. With this, only verified user that can export WebScheduler to pdf. Also, you could try to change the file name for each user so it will minimize risk of data leak in your application. Is it possible for your for doing these method? Look forward to hear any feedback from you so I can help you further.
or
Choose this if you're already a member of Intersoft Community Forum. You can link your OpenID account to your existing Intersoft Social ID.
Choose this if you don't have an Intersoft account yet. Your authenticated OpenID will be automatically linked to your new Intersoft account.
Enter your Wordpress Blogname