here is my code:
grid_basket is the source grid and it have 5 columns with some info but not all that i need.
[code]scheduler.attachEvent(âonExternalDragInâ, function(id, source, event){
var id_grid =grid_basket.getSelectedRowId();
var cella = grid_basket.cellById(id_grid,4);
var ods = grid_basket.cellById(id_grid,0).getValue();
var oper = grid_basket.cellById(id_grid,1).getValue();
var tipo_int = grid_basket.cellById(id_grid,2).getValue();
var data_ini = grid_basket.cellById(id_grid,3).getValue();
var dest = grid_basket.cellById(id_grid,4).getValue();
var bgcolor = grid_basket.cellById(id_grid,4).cell.parentNode.bgColor;
var label = ods;
var evento_scheduler = scheduler.getEvent(id);
dragIn = true;
evento_scheduler.text = label;
evento_scheduler.isIntervento = âtrueâ;
evento_scheduler.color = bgcolor;
evento_scheduler.FuoriSla = ââ;
if(evento_scheduler.isIntervento == âtrueâ)
{
var data_inizio = evento_scheduler.start_date.getDate()+"-"+(evento_scheduler.start_date.getMonth()+1)+"-"+evento_scheduler.start_date.getFullYear()+" dalle ore:"+evento_scheduler.start_date.getHours()+":"+evento_scheduler.start_date.getMinutes();
var data_fine = evento_scheduler.end_date.getDate()+"-"+(evento_scheduler.end_date.getMonth()+1)+"-"+evento_scheduler.end_date.getFullYear()+" alle ore:"+evento_scheduler.end_date.getHours()+":"+evento_scheduler.end_date.getMinutes();
var answer = confirm(âSi sta per modificare lâintervento â+evento_scheduler.ExtCod+â data inizio:â+data_inizio+",data fine:"+data_fine+" assegnato allâutente:"+scheduler.getLabel(âsection_idâ, evento_scheduler.section_id)+" confermi la modifica?");
if(answer)
{
openLighBox = true;
//evento_scheduler.id = id_grid;
scheduler.changeEventId(id, id_grid);
grid_basket.cellById(id_grid,1).setValue(scheduler.getLabel(âsection_idâ, evento_scheduler.section_id));
grid_basket.cellById(id_grid,3).setValue(evento_scheduler.start_date.getDate()+"-"+(evento_scheduler.start_date.getMonth()+1)+"-"+evento_scheduler.start_date.getFullYear()+" â+evento_scheduler.start_date.getHours()+â:"+evento_scheduler.start_date.getMinutes());
//return true;
}
else
{
dp_presenze.setUpdateMode("off");
scheduler.deleteEvent(id);
dp_presenze.setUpdated(id,true);
dp_presenze.setUpdateMode("cell");
//return false;
}
}
return true;
});[/code]
as you can see i change id of event here and the grid id is correct.
when update is completed:
dp_presenze is a dataprocessor linked to scheduler. Id of inserted event is corret because server correctly update db row.
[code]dp_presenze.defineAction(âinsertedâ,function(response){
var message = response.getAttribute(âmessageâ);
var isIntervento = response.getAttribute(âisInterventoâ);
var isAssIntConfermata = response.getAttribute(âisAssIntConfermataâ);
var id = response.getAttribute(âsidâ);
var idArea = response.getAttribute(âidAreaâ);
var idTipInt = response.getAttribute(âidTipIntâ);
var event_object = scheduler.getEvent(id);
event_object[âisInterventoâ] = isIntervento;
event_object[âidAreaâ] = idArea;
event_object[âidTipIntâ] = idTipInt;
var isAssenza = response.getAttribute(âisAssenzaâ);
if(isIntervento == âtrueâ)
{
id_dragged = id;
event_object[âisAssIntConfermataâ] = isAssIntConfermata;
}
else
event_object[âisAssenzaâ] = isAssenza;
//visualizzaMessaggio(message,"green");
dhtmlx.message(message);
return true;
});[/code]
When update is completed:
id_dragged is != 0 if i dragged in somenthing from the grid.
[code]dp_presenze.attachEvent(âonAfterUpdateFinishâ,function(){
if(id_dragged !=0)
{
scheduler.setLoadMode(false);
scheduler.load("PresenzeTurniSave?action=getInterventiPresenze&id="+id_dragged+"&view="+scheduler.getState().mode, function(){
scheduler.setCurrentView();
});
scheduler.setLoadMode("week");
id_dragged = 0;
}
return true;
});[/code]
if we can find a solution i will insert all info on my grid and then copy them when i drag an event, but i will prefer to load it from server.
Thank you 