Dim rtb As New RadTextBox
rtb.ClientEvents.OnValueChanged =
"gettext('" & row("LField").ToString.Trim & "')"
Problem 1 : The event fires after the above line executes
Problem 2 : I getting the following Javascript Error
Microsoft JScript runtime error: Sys.InvalidOperationException: Handler must be a function.
the function in Seperate Javascript file
how to solve this Problem
good day for u all
i've a radschadular that gets data from oracle DB the schadual is all credits avilable for students each credit has a group type/types under that group type the appointements avilablefor it.
what i need is
when the student checks one group type he can't leave to another credit if it hase more than group type untill checking all.
iwrote oracle procedure as follow to check this in the DB.
X VARCHAR2(20);
A NUMBER;
B NUMBER;
BEGIN
SELECT COUNT (GROUP_TYPE) INTO A
FROM OLR.VIEW_COURSE_GROUP_TYPE
WHERE COURSEID = OLR.complete_group_type.COURSEID;
SELECT COUNT(A.GROUP_TYPE_CD) INTO B
FROM OLR.STUDENT_REG_GROUP A
WHERE A.STUDENTID = OLR.complete_group_type.STUDENTID
AND A.SEMESTERID = (SELECT SEMESTERID FROM MSA.SEMESTER@MSA WHERE CURRENT_SEM = '1')
AND A.COURSEID = OLR.complete_group_type.COURSEID;
IF A<>B THEN
SELECT GROUP_TYPE INTO X
FROM OLR.VIEW_COURSE_GROUP_TYPE
WHERE COURSEID = OLR.complete_group_type.COURSEID
AND GROUP_TYPE NOT IN (SELECT A.GROUP_TYPE_CD
FROM OLR.STUDENT_REG_GROUP A
WHERE A.STUDENTID = OLR.complete_group_type.STUDENTID
AND A.SEMESTERID = (SELECT SEMESTERID FROM MSA.SEMESTER@MSA WHERE CURRENT_SEM = '1')
AND A.COURSEID = OLR.complete_group_type.COURSEID);
RETURN ('YOU NOT CHOOSE GROUP TYPE '||X);
END IF;
EXCEPTION WHEN TOO_MANY_ROWS THEN
RETURN ('PLEASE CHOOSE ALL COURSE GROUP TYPE');
END complete_group_type;
but i could't find the approbriate event to use it n how i used the rad shadular event appointement update
but i don't know how to use the upove function.
<telerik:RadScheduler runat="server" ID="RadScheduler1" Height="585px" SelectedDate="2010-03-04"FirstDayOfWeek="Saturday" LastDayOfWeek="Thursday" DataKeyField="ActivityId" DataSubjectField="Subject" DataDescriptionField="Description" DataStartField="Start" ShowFooter="true" ShowHeader="true" DataEndField="End" CustomAttributeNames="Location" StartInsertingInAdvancedForm="true" StartEditingInAdvancedForm="true" EnableExactTimeRendering="true"Skin="Windows7" EnableDescriptionField="true" DataReminderField="Reminder" AppointmentStyleMode="Default"OnNavigationComplete="RadScheduler1_NavigationComplete" OnAppointmentCreated="RadScheduler1_AppointmentCreated"OnAppointmentDataBound="RadScheduler1_AppointmentDataBound"> <AdvancedForm EnableCustomAttributeEditing="true" EnableResourceEditing="true" Modal="true" /> <TimelineView UserSelectable="false" /> <Reminders Enabled="true" /> <ResourceTypes> <telerik:ResourceType Name="Category" DataSourceID="odsScheduleCategory" ForeignKeyField="CategoryID" TextField="ColorCategory" KeyField="CategoryID" /> </ResourceTypes> <ResourceStyles> <%--AppointmentStyleMode must be explicitly set to Default (see above) otherwise setting BackColor/BorderColor will switch the appointments to Simple rendering (no rounded corners and gradients)--%> <%--<telerik:ResourceStyleMapping Type="Category" Text="ColorCategory" ApplyCssClass="rsCategoryBlue" BorderColor="#B0CC9B" /> <telerik:ResourceStyleMapping Type="Category" Text="Green Category" ApplyCssClass="rsCategoryGreen" /> <telerik:ResourceStyleMapping Type="Category" Text="ColorCategory" BackColor="#edd5b7" BorderColor="#cdb597" />--%> </ResourceStyles> <AppointmentTemplate> <div> <%# Eval("Subject") %> </div> <%# Eval("Description") %> <%#Eval("Location")%> <%#Eval("Start")%> <%#Eval("End")%> <%#Eval("ShowAs")%> </AppointmentTemplate> <%--<AdvancedInsertTemplate> <telerik:RadTextBox ID="txtLocation" runat="server" Label="Location :" Skin="Windows7"> </telerik:RadTextBox> </AdvancedInsertTemplate>--%> <TimeSlotContextMenuSettings EnableDefault="true" /> <AppointmentContextMenuSettings EnableDefault="true" /> </telerik:RadScheduler>RadScheduler1.DataSource = dt RadScheduler1.DataBind()protected void RadGrid1_InsertCommand(object source, GridCommandEventArgs e) { GridDataInsertItem insertItem; insertItem = (GridDataInsertItem)RadGrid1.MasterTableView.GetInsertItem(); }<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="schedulerBooking.ascx.cs" Inherits="schedular.schedulerBooking" %><%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %> <script type="text/javascript"> function OnClientAppointmentMoving(sender, eventArgs) { eventArgs.set_cancel(true); } </script><telerik:RadScriptManager ID="radScriptManager" runat="server" /><telerik:RadAjaxPanel ID="radAjaxPanel" runat="server" LoadingPanelID="radAjaxLoadingPanel"> <telerik:RadAjaxManager ID="radAjaxManager" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="radScheduler"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="radScheduler" /> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="ddlRooms"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="radScheduler" /> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="radAjaxManager"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="radScheduler" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <asp:UpdatePanel ID="upRadioButtons" runat="server"> <ContentTemplate> <asp:Label ID="lblRooms" runat="server" AssociatedControlID="ddlRooms" Text="Stuga" /> <telerik:RadComboBox ID="ddlRooms" runat="server" AutoPostBack="true" /> </ContentTemplate> </asp:UpdatePanel> <telerik:RadScheduler ID="radScheduler" runat="server" FirstDayOfWeek="Monday" LastDayOfWeek="Sunday" DayStartTime="00:00:00" DayView-WorkDayStartTime="00:00:00" DayEndTime="23:59:59" DayView-WorkDayEndTime="23:59:59" TimeLabelRowSpan="1" MinutesPerRow="60" StartInsertingInAdvancedForm="True" Culture="sv-SE" HoursPanelTimeFormat="HH:mm" ShowAllDayRow="False" ShowFooter="False" CustomAttributeNames="Bokare" AdvancedForm-EnableCustomAttributeEditing="true" DataKeyField="BookingId" DataSubjectField="Subject" DataStartField="Start" DataEndField="End" DataSourceID="BookingDataSource" onappointmentdelete="radScheduler_AppointmentDelete" onappointmentinsert="radScheduler_AppointmentInsert" onappointmentupdate="radScheduler_AppointmentUpdate" NumberOfHoveredRows="2" onformcreated="radScheduler_FormCreated" onformcreating="radScheduler_FormCreating" OnClientAppointmentMoving="OnClientAppointmentMoving" WeekView-ReadOnly="false" WeekView-DayEndTime="23:59:59" WeekView-DayStartTime="00:00:00"> <AdvancedForm Modal="true" /> <AppointmentTemplate> <strong><%# Eval("Bokare") %></strong> <p><%# Eval("Subject") %></p> </AppointmentTemplate> <TimelineView UserSelectable="true" /> <TimeSlotContextMenuSettings EnableDefault="false" /> <TimeSlotContextMenus> <telerik:RadSchedulerContextMenu ID="SchedulerTimeSlotContextMenu" runat="server"> <Items> <telerik:RadMenuItem Text="Ny bokning" Value="CommandAddAppointment" /> <telerik:RadMenuItem IsSeparator="true" /> <telerik:RadMenuItem Text="Gå till idag" Value="CommandGoToToday" /> </Items> </telerik:RadSchedulerContextMenu> </TimeSlotContextMenus> <AppointmentContextMenuSettings EnableDefault="false" /> <AppointmentContextMenus> <telerik:RadSchedulerContextMenu ID="SchedulerAppointmentContextMenu" runat="server"> <Items> <telerik:RadMenuItem Text="Redigera" Value="CommandEdit" /> <telerik:RadMenuItem IsSeparator="true" /> <telerik:RadMenuItem Text="Ta bort" Value="CommandDelete" /> </Items> </telerik:RadSchedulerContextMenu> </AppointmentContextMenus> <AdvancedForm Modal="True" /> <Localization AdvancedAllDayEvent="Heldag" AdvancedCalendarCancel="Avbryt" AdvancedCalendarToday="Idag" AdvancedClose="Stäng" AdvancedDaily="Dagligen" AdvancedDay="Dag" AdvancedDays="dag(ar)" AdvancedDescription="Beskrivning" AdvancedDone="Färdig" AdvancedEditAppointment="Ändra bokning" AdvancedFrom="Start" AdvancedNewAppointment="Ny bokning" AdvancedSubject="Ämne" AdvancedTo="Till" AdvancedWeekly="Veckovis" AllDay="Heldag" Cancel="Avbryt" ConfirmCancel="Avbryt" ConfirmDeleteText="Är du säker på att du vill ta bort bokningen?" ConfirmDeleteTitle="Bekräfta borttagning" ContextMenuAddAppointment="Ny bokning" ContextMenuDelete="Ta bort" ContextMenuEdit="Ändra" ContextMenuGoToToday="Gå till idag" HeaderDay="Dag" HeaderMonth="Månad" HeaderMultiDay="Flera dagar" HeaderNextDay="nästa dag" HeaderPrevDay="föregående dag" HeaderTimeline="Tidslinje" HeaderToday="Idag" HeaderWeek="Vecka" Save="Spara" Show24Hours="24 timmars format" ShowAdvancedForm="Val" /> <TimelineView UserSelectable="False" /> </telerik:RadScheduler></telerik:RadAjaxPanel><asp:SqlDataSource ID="BookingDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:*%>" SelectCommand="SELECT [BookingId], [Subject], [Start], [End], [RoomId], [nodeId] FROM [Bookings] WHERE ([RoomId] = @RoomId)"> <SelectParameters> <asp:ControlParameter ControlID="ddlRooms" DefaultValue="1" Name="RoomId" PropertyName="SelectedValue" Type="Int32" /> </SelectParameters></asp:SqlDataSource>using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using Telerik.Web.UI;using umbraco.cms.businesslogic.member;namespace schedular{ public partial class schedulerBooking : System.Web.UI.UserControl { protected dbDataContext db = new dbDataContext(); protected int userId = umbraco.cms.businesslogic.member.Member.GetCurrentMember().Id; protected bool IsBookingAdmin; protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { var rooms = (from r in db.Rooms select r); ddlRooms.DataTextField = "RoomName"; ddlRooms.DataValueField = "RoomId"; ddlRooms.DataSource = rooms; ddlRooms.DataBind(); } BookingDataSource.SelectCommand = "SELECT b.[BookingId], b.[Subject], b.[End], b.[Start], b.[RoomId], b.[nodeId], u.[LoginName] Bokare FROM [Bookings] AS b JOIN [cmsMember] AS u ON u.[nodeId] = b.[nodeId] WHERE ([RoomId] = @RoomId)"; } protected void radScheduler_AppointmentInsert(object sender, AppointmentInsertEventArgs e) { BookingDataSource.InsertCommand = "INSERT INTO [Bookings] ([Subject], [Start], [End], [RoomId], [nodeId]) VALUES (@Subject, @Start, @End, " + int.Parse(ddlRooms.SelectedValue) + ", " + userId + ")"; radScheduler.Rebind(); } protected void radScheduler_AppointmentUpdate(object sender, AppointmentUpdateEventArgs e) { foreach (Member member in Member.GetAll) { if (member.ContentType.Alias.ToString() == "BookingAdmin") IsBookingAdmin = true; else IsBookingAdmin = false; } foreach (Appointment a in radScheduler.Appointments.GetAppointmentsInRange(e.ModifiedAppointment.Start, e.ModifiedAppointment.End)) { int id = (int)e.Appointment.ID; int aId = (int)a.ID; var bookingOwner = (from o in db.Bookings where o.BookingId == id select o).Single(); if (aId == id && bookingOwner.nodeId == userId || IsBookingAdmin) { BookingDataSource.UpdateCommand = "UPDATE [Bookings] SET [Subject] = @Subject, [Start] = @Start, [End] = @End, [RoomId] = " + int.Parse(ddlRooms.SelectedValue) + " WHERE [BookingId] = " + id; radScheduler.Rebind(); } else e.Cancel = true; } } protected void radScheduler_AppointmentDelete(object sender, AppointmentDeleteEventArgs e) { foreach (Member member in Member.GetAll) { if (member.ContentType.Alias.ToString() == "BookingAdmin") IsBookingAdmin = true; else IsBookingAdmin = false; } int id = (int)e.Appointment.ID; var bookingOwner = (from o in db.Bookings where o.BookingId == id select o).Single(); if (bookingOwner.nodeId == userId || IsBookingAdmin == true) { BookingDataSource.DeleteCommand = "DELETE FROM [Bookings] WHERE [BookingId] = " + id; radScheduler.Rebind(); } else e.Cancel = true; } protected void radScheduler_FormCreating(object sender, SchedulerFormCreatingEventArgs e) { var user = (from u in db.cmsMembers where u.nodeId == userId select u).Single(); if (string.IsNullOrEmpty(e.Appointment.Attributes["Bokare"])) e.Appointment.Attributes["Bokare"] = user.LoginName; } protected void radScheduler_FormCreated(object sender, SchedulerFormCreatedEventArgs e) { if (e.Container.Mode == SchedulerFormMode.AdvancedEdit || e.Container.Mode == SchedulerFormMode.AdvancedInsert) { RadTextBox txtBooker = e.Container.FindControl("AttrBokare") as RadTextBox; txtBooker.Enabled = false; txtBooker.Style.Value = "border:0;color:Black !important;background-color:#EEEEEE;"; } } }}