Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
315
Unassigned owner Issue
posted

Hi,

I am using the Ultrawin Sheduler for one of my appointment book feature. In that i have more then 1 owner. I also have a Unassigned owner visible.

While binding the Data to the scheduler, things work well. Appointments gets distributed to different owners correctly, even to the unassigned owner. Drag and Drop from the Unassigned to the Proper owner also works well.

But Drag and Drop from proper owners to Unassigned owner throws up following exception:

System.ArgumentException occurred
  Message="Object of type 'System.DBNull' cannot be converted to type 'System.String'."
  Source="System"
  StackTrace:
       at System.ComponentModel.ReflectPropertyDescriptor.SetValue(Object component, Object value)
       at Infragistics.Win.UltraWinSchedule.Appointment.BoundPropertySet(AppointmentsDataBindingPropertyId currentPropertyId, Object newValue, AppointmentPropIds undirtyPropertyId, Boolean updateForUnboundMember)
       at Infragistics.Win.UltraWinSchedule.Appointment.BoundPropertySet(AppointmentsDataBindingPropertyId currentPropertyId, Object newValue, AppointmentPropIds undirtyPropertyId)
       at Infragistics.Win.UltraWinSchedule.Appointment.set_OwnerKey(String value)
       at Infragistics.Win.UltraWinSchedule.Appointment.InternalSetOwner(Owner newOwner)
       at Infragistics.Win.UltraWinSchedule.Appointment.set_Owner(Owner value)
       at Infragistics.Win.UltraWinSchedule.UltraDayView.DragAppointmentsToTimeSlot(MouseMessageInfo msginfo)
       at Infragistics.Win.UltraWinSchedule.UltraDayView.DragAppointments(MouseMessageInfo msginfo)
       at Infragistics.Win.UltraWinSchedule.UltraDayView.Infragistics.Win.ISelectionManager.OnDragMove(MouseMessageInfo& msginfo)
       at Infragistics.Win.SelectionStrategyBase.DragMove(MouseMessageInfo msgInfo)
       at Infragistics.Win.SelectionStrategyExtended.OnMouseMove(ISelectableItem item, MouseMessageInfo& msginfo)
       at Infragistics.Win.SelectionStrategyExtended.OnMouseMessage(ISelectableItem item, MouseMessageInfo& msginfo)
       at Infragistics.Win.ControlUIElementBase.ProcessMouseMoveHelper(Object sender, MouseEventArgs e)
       at Infragistics.Win.ControlUIElementBase.ProcessMouseMove(Object sender, MouseEventArgs e)
       at Infragistics.Win.Utilities.ProcessEvent(Control control, ProcessEvent eventToProcess, EventArgs e)
       at Infragistics.Win.UltraControlBase.OnMouseMove(MouseEventArgs e)
       at System.Windows.Forms.Control.WmMouseMove(Message& m)
       at System.Windows.Forms.Control.WndProc(Message& m)
       at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
       at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
       at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
       at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
       at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
       at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
       at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
       at System.Windows.Forms.Application.Run(ApplicationContext context)
       at EasyClinic.UI.MdlStartUp.Main(String[] Switch) in Y:\Easy Clinic Application\EasyClinic\EasyClinic_UI\Startup Objects\MdlStartUp.vb:line 169


Following is the code that i am using to bind the owners to the scheduler:

   With Frm.UltraCalendarInfo1.DataBindingsForOwners
                .DataSource = ObjOwnerCol
                .BindingContextControl = Frm
                .KeyMember = Code
                .NameMember = FullName
                .VisibleMember = IsVisible
            End With

            'Bind the datasource to the scheduler
            With Frm.UltraCalendarInfo1.DataBindingsForAppointments
                .DataSource = ObjAppointmentsCol
                .BindingContextControl = Frm
                .SubjectMember = Subject
                .StartDateTimeMember = StartTime
                .AllDayEventMember = IsAllDayEvent
                .EndDateTimeMember = EndTime
                .OwnerKeyMember = OwnerCode
            End With

Can you please tell me where am i going wrong?

Regards,
Hemesh

Parents
  • 69832
    Suggested Answer
    Offline posted

    The string field you are using for the owner key has a "disallow null" condition imposed on it, and the database layer is rejecting the null value.

     

Reply Children