User Profile & Activity

Glenn Layaar Support
Page
of 99

It seems this issue is caused because of a bug. A bug report has been submitted. We will inform you if there is any update or progress regarding this issue.

Sorry for the late reply, you are correct currently WebGrid 7 has not supported this feature yet. However an enchancement is being developed and is scheduled to be ready in the next WebGrid 7 build.

Posted: February 24, 2010 3:27 AM

Thank you for the issue report, it seems this issue is cause by a bug. This issue will be fixed in the next built of WebScheduler.

This issue occurs because the generated Excel report Price column width is not wide enough to support the data format. A workaround for this issue would be to add some whitespace to the Price column caption during Export server side event so the column width in the Excel will be wider. Here is the snippet:

protected void wgTest_Export(object sender, ISNet.WebUI.WebGrid.ExportEventArgs e)
{
e.Table.Columns.GetNamedItem("Price").Caption = "Price ";
}
Posted: February 23, 2010 10:53 PM

Currently, WebScheduler only support Date X of every Y month. I have logged a feature request for WebScheduler to support recurring pattern such as first tuesday of each month.

Posted: February 23, 2010 8:32 PM

As I Mentioned earlier the sample I attached earlier in the post is moe suited for changing datasource, both the data and the structure of the WebGrid will change. The RetrieveStructure is invoked for this very reason, the need to change the column structure of the WebGrid, the technique is derived from the WebGrid tutorial ChangeDS.aspx page.

In your case, with only the data is changing, you could use Refresh function instead of RefreshAll. This way WebGrid will not refresh the column structure.

Please modify the doChange client side function to use Refresh instead RefreshAll to solve the issue in ErrorWORetrieveStructure:

function doChange(obj) {
var grid = wgGetGridById("WebGrid1");
document.all["CustomerID"].value = obj.value;
grid.Refresh();
}


 

Posted: February 23, 2010 4:00 AM

I have discussed this issue with my superior, you will need to purchase the WebGrid 7 license in order to test WebGrid 7 webpart in SPS 2010. Currently the evaluation version will not run in the SPS environment, unlicensed control error message will be displayed.

The developer consider enhancing the control in order to allow the evaluation version to run in SPS, however I do not have any timeline when will this feature is implemented. 

Attached is the modified WebService.cs that has been modifed to handle the grouping without linq provider. You will need to create WebGridGroupRow class to contain the grouping information. The function GetPagedBugs has another conditonal check for SelectOperation.SelectGroup that will handle the grouping functionality.

For each grouping, you will need to add another depth to the WebGridGroupRow construct. The required information for the construct id the group depth, group row position, next level of group row information, total grouped row count.
Posted: February 22, 2010 11:38 PM

WebScheduler will override any onload client side event handler in order to facilitate WebScheduler internal process. You could try using the WebScheduler OnInitialize client side event handler for similar life cycle with the OnLoad event handler. In your case, the OnInitialize event handler would be:

function wsSchedule_OnInitialize(controlId) {
var wsSchedule = ISGetObject(controlId);

setTimeout(function() {
RefreshScheduler()
}, 50);

return true;
}

The setTimeout is required to achieve the scenario you wanted.

You are using WebButton to post back the page and by default the PostBackMode of the WebButton is FlyPostBack. In order to refresh the scheduler during button click please use the InvokeScript function in the WebButton ClientAction property. Here is the snippet:

    Private Sub wbInsert_Clicked(ByVal sender As Object, ByVal e As ISNet.WebUI.WebDesktop.WebButtonClickedEventArgs) Handles wbInsert.Clicked
Dim strSQL As String

Dim dsStaffInfo As DataSet
Dim dsRecurrenceInfo As DataSet

strSQL = "INSERT INTO ttResources (StaffCode, StaffName, ResourceColor) VALUES ('SC02', 'Staff 02', '#00FF')"
conn.ExecuteCommand(strSQL)

strSQL = "SELECT ID, StaffCode, StaffName FROM ttResources"
dsStaffInfo = conn.ExecuteSelect(strSQL)

strSQL = "INSERT INTO ttEvents (StaffID, ActivityCode, ActivityName, RoomID, Location, StartTime, EndTime, ScheduleID, Description) " _
& "VALUES ('" + dsStaffInfo.Tables(0).Rows(0).Item("ID").ToString + "', 'INWKA', 'INWKA', 1, 'BC01-F01-LR02', '2010-02-22 08:00:00.000', '2010-02-22 09:00:00.000', 1, 'Resources - Staff 02 (Staff 02) Activity - (INWKA) Venue - BC01-F01-LR02')"
conn.ExecuteCommand(strSQL)

strSQL = "INSERT INTO ttRecurrenceInfo (StartDate, EndDate, TotalRecurrence, WeekDay, ScheduleID, Mode, RangeMode) " _
& "VALUES('2010-01-04 00:00:00.000', '2010-03-31 00:00:00.000', '10', '1', '1', '2', '0')"
conn.ExecuteCommand(strSQL)

strSQL = "SELECT ID FROM ttResources"
dsRecurrenceInfo = conn.ExecuteSelect(strSQL)

strSQL = "INSERT INTO ttRecurringEvents (RecurrenceID, StaffID, ActivityCode, ActivityName, RoomID, Location, StartTime, EndTime, ScheduleID, " _
& "Description) " _
& "VALUES('" + dsRecurrenceInfo.Tables(0).Rows(0).Item("ID").ToString + "', '" + dsStaffInfo.Tables(0).Rows(0).Item("ID").ToString + "', 'ICSALab1', 'ICSALab1', 2, 'BC01-F01-CL02', '2010-01-04 08:00:00.000', '2010-01-04 09:00:00.000', 1, 'Resources - Staff 02 (Staff 02) Activity - Introduction to Computer Science (L) (ICSALab1) Venue - BC01-F01-CL02') "
conn.ExecuteCommand(strSQL)

wbInsert.ClientAction.InvokeScript("RefreshScheduler()")

End Sub


Posted: February 22, 2010 10:14 PM

In order to retrieve the bar type, you will need to iterate the SeriesBarType enum object. All the 3D type should have a 3D string in the enum.

Here is the snippet:

List<string> type3D = new List<string>();
List<string> type2D = new List<string>();

foreach (SeriesBarType type in SeriesBarType.GetValues(typeof(SeriesBarType)))
{
string typeStr = type.ToString();
if (typeStr.Contains("3D"))
type3D.Add(typeStr);
else
type2D.Add(typeStr);
}


All times are GMT -5. The time now is 3:28 PM.
Previous Next