Hi
We are using a custom editor form for tasks in gantt and we show a grid to add and delete predecessors and successors.
The grid have combo widget with a store to populate the available records.
useEffect(() => {
/** Remove the record itself from a list of available tasks */
let cleanAvailableTasks = currentTask.taskStore.records.filter((record) => {
return record.id !== currentTask.id;
});
/** Remove the parent task from the list of available tasks */
if (currentTask.parentId) {
cleanAvailableTasks = cleanAvailableTasks.filter((record) => {
return record.id !== currentTask.parentId;
});
}
/** Remove the list of children from available tasks */
if (currentTask.allChildren.length) {
const allChildrenIds = currentTask.allChildren.map((record) => record.id);
cleanAvailableTasks = cleanAvailableTasks.filter((record) => {
return !allChildrenIds.includes(record.id);
});
}
/** Remove the existing predecessors from list of available tasks */
const predecessorTaskIds = currentTask.predecessorTasks.map(
(predecessorTask) => predecessorTask.id
);
const cleanAvailablePredecessorTasks = cleanAvailableTasks.filter(
(cleanAvailableTask) =>
!predecessorTaskIds.includes(cleanAvailableTask.id)
);
/** Remove the existing successors from list of available tasks */
const successorTaskIds = currentTask.successorTasks.map(
(successorTask) => successorTask.id
);
const cleanAvailableSuccessorTasks = cleanAvailableTasks.filter(
(cleanAvailableTask) => !successorTaskIds.includes(cleanAvailableTask.id)
);
availablePredecessorTasksStore.add(cleanAvailablePredecessorTasks);
availableSuccessorTasksStore.add(cleanAvailableSuccessorTasks);
predecessorsStore.add(currentTask.predecessors);
successorsStore.add(currentTask.successors);
}, [currentTask.id]);
When we add to the availablePredecessorTasksStore
, I get an error with parent tasks
Error: Unknown identifier ClassDefEx-1567962.$.effectiveCalendar
My question is are parent task and normal task different Classes? Why would it throw this error when trying to add tasks to the store of the combo box? Any insights would be appreciated thank you.
Also is there like a predecessor table widget that we could use in some custom task editor?