Here are my code. Job data aren't coming in scheduler. There is error in browser's console also.
function
recreateScheduler(groupArray, techs) {
$(
"#kendoDemoScheduler"
).kendoScheduler({
date:
new
Date(
"2016/3/31"
),
startTime:
new
Date(
"2016/3/31 07:00 AM"
),
height: 600,
eventHeight: 50,
majorTick: 60,
views: [
{ type:
"timeline"
, selected:
true
}
],
timezone:
"Etc/UTC"
,
dataSource: {
batch:
true
,
transport: {
read: {
url:
'@Url.Action("JobSchedule_Read", "JOBS")'
,
dataType:
"jsonp"
},
update: {
url:
"//demos.telerik.com/kendo-ui/service/meetings/update"
,
dataType:
"jsonp"
},
create: {
url:
"//demos.telerik.com/kendo-ui/service/meetings/create"
,
dataType:
"jsonp"
},
destroy: {
url:
"//demos.telerik.com/kendo-ui/service/meetings/destroy"
,
dataType:
"jsonp"
},
parameterMap:
function
(options, operation) {
if
(operation ==
"read"
) {
var
searchCondition =
""
;
var
statusCheckBoxesValues =
""
;
var
sortFilter = $(
"#sortFilterDropDownList"
).data(
"kendoDropDownList"
).text();
var
dispatch = $(
"#dispatchDropDownList"
).data(
"kendoDropDownList"
).value();
var
assignto = $(
"#techDropDownList"
).data(
"kendoDropDownList"
).value();
var
area = $(
"#areaDropDownList"
).data(
"kendoDropDownList"
).value();
var
category = $(
"#categoryDropDownList"
).data(
"kendoDropDownList"
).value();
var
product = $(
"#productDropDownList"
).data(
"kendoDropDownList"
).value();
var
proditem = $(
"#itemDropDownList"
).data(
"kendoDropDownList"
).value();
var
datefrom = $(
"#fromDatePicker"
).val();
var
dateto = $(
"#toDatePicker"
).val();
if
(sortFilter ==
"[NONE]"
) {
if
(area ==
"[ALL]"
&& dispatch ==
"[ALL]"
&& assignto ==
"[ALL]"
&& category ==
"[ALL]"
) {
searchCondition =
"opq3"
;
}
else
searchCondition =
"opq3_1"
;
}
if
(sortFilter ==
"Name"
)
searchCondition =
"opq1"
;
else
if
(sortFilter ==
"@SystemConfiguration.AssignTo"
)
searchCondition =
"opq2"
;
else
if
(sortFilter ==
"PostCode"
)
searchCondition =
"opq4"
;
else
if
(sortFilter ==
"Area"
)
searchCondition =
"opq5"
;
else
if
(sortFilter ==
"Suburb"
)
searchCondition =
"opq6"
;
else
if
(sortFilter ==
"Job Address"
)
searchCondition =
"opq8"
;
$(
".treatmentCheckBoxes .k-checkbox"
).each(
function
(index) {
if
($(
this
).is(
":checked"
))
statusCheckBoxesValues += $(
this
).attr(
"status"
) +
","
;
})
$(
".followUpCheckBoxes .k-checkbox"
).each(
function
(index) {
if
($(
this
).is(
":checked"
))
statusCheckBoxesValues += $(
this
).attr(
"status"
) +
","
;
})
if
(statusCheckBoxesValues.indexOf(
","
) >= 0)
statusCheckBoxesValues = statusCheckBoxesValues.substring(0, (statusCheckBoxesValues.length - 1));
return
{
ip_cond: searchCondition,
ip_area: area ==
""
?
"[All]"
: area,
ip_dispatch: dispatch ==
""
?
"[All]"
: dispatch,
ip_assignto: assignto ==
""
?
"[All]"
: assignto,
ip_category: category ==
""
?
"[All]"
: category,
ip_product: product ==
""
?
"[All]"
: product,
ip_proditem: proditem ==
""
?
"[All]"
: proditem,
ip_streetno: $(
"#txtSearchStreetNo"
).val(),
ip_filter: $(
"#txtSearchInput"
).val(),
ip_datefrom: datefrom ==
""
?
null
: datefrom,
ip_dateto: dateto ==
""
?
null
: dateto,
ip_statlist: statusCheckBoxesValues ==
""
?
"DB"
: statusCheckBoxesValues,
ip_unsched: $(
"#unsceduledCheckBox"
).is(
":checked"
),
ip_contr_only: $(
"#contractJobsCheckBox"
).is(
":checked"
),
ip_quote: $(
"#quoteShowOnlyCheckBox"
).is(
":checked"
)
};
}
}
},
schema: {
model: {
id:
"ReservationID"
,
fields: {
taskId: { from:
"ReservationID"
},
title: { from:
"Title"
},
start: { type:
"date"
, from:
"Start"
},
end: { type:
"date"
, from:
"End"
},
ownerId: { from:
"emm_code"
}
}
}
}
},
group: {
resources: groupArray,
orientation:
"vertical"
},
resources: [
{
field:
"attendees"
,
name:
"Attendees"
,
dataTextField:
"TechName"
,
dataValueField:
"emm_code"
,
dataSource: techs,
multiple:
true
,
title:
"Attendees"
}
]
});
}
$(
function
() {
var
groupArray = [
"Attendees"
];
var
techs = [];
$.ajax({
async:
false
,
url:
'@Url.Action("Techs", "JOBS")'
,
type:
'GET'
,
dataType:
'json'
,
success:
function
(data) {
$.each(data,
function
(i, tech) {
techs.push(
{ TechName: tech.TechName, emm_code: tech.emm_code }
);
})
recreateScheduler(groupArray, techs);
}
});
})
public
JsonResult JobSchedule_Read([DataSourceRequest] DataSourceRequest request,
string
ip_cond,
string
ip_area,
string
ip_dispatch,
string
ip_assignto,
string
ip_category,
string
ip_product,
string
ip_proditem,
string
ip_streetno,
string
ip_filter, DateTime? ip_datefrom, DateTime? ip_dateto,
string
ip_statlist,
string
ip_unsched,
string
ip_contr_only,
string
ip_quote)
{
int
jobHour = 0;
int
jobMinute = 0;
string
duration =
""
;
DateTime startDateTime = ip_datefrom ?? DateTime.Now;
DateTime endDateTime = ip_dateto ?? DateTime.Now;
List<TaskViewModel> tasks =
new
List<TaskViewModel>();
List<JscMstr> jscMstrs;
List<JhMstr> jhMstrs;
List<JdDet> jdDets;
List<JscDet> jscDets;
List<CoMstr> coMstrs;
List<CodDet> codDets;
List<JrSumm> jrSumms;
List<CsMstr> csMstrs;
List<HhStatus> hhStatuses;
List<HhSumm> hhSumms;
List<GrJscMstr> grJscMstrs;
List<SchJsdDet> schJsdDets;
List<TsMstr> tsMstr;
JobRepository jr =
new
JobRepository();
tsMstr = jr.GetReservations(startDateTime, endDateTime,
"[ALL]"
);
foreach
(var item
in
tsMstr)
{
tasks.Add(
new
TaskViewModel()
{
TechName = item.tsm_assto,
emm_code = item.tsm_assto,
Title = item.tsm_reason,
ReservationID = item.tsm_res_id,
ReservedBy = Session[
"CompanyID"
].ToString(),
ReservationDate = item.tsm_res_date,
ReservationViewDate = item.tsm_res_date.ToString(
"dd/MM/yyyy"
),
ReservationTime = item.tsm_res_date.ToString(
"dd/MM/yyyy"
) +
" "
+ item.tsm_res_time,
Start = startDateTime,
End = endDateTime,
Description =
"Description 101"
,
IsAllDay =
false
,
StartViewDate = startDateTime.ToString(
"dd/MM/yyyy"
),
StartViewTime = startDateTime.ToString(
"HHmm"
),
Duration = item.tsm_job_duration,
ScheduleType =
"Reservation"
,
Color =
"#f8a398"
});
}
return
Json(tasks.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
}
Thanks.