{"id":28543,"date":"2022-05-17T17:52:57","date_gmt":"2022-05-17T15:52:57","guid":{"rendered":"https:\/\/help.qualiware.it\/qw-help\/?p=28543"},"modified":"2024-01-24T19:36:55","modified_gmt":"2024-01-24T18:36:55","slug":"esempio-di-drag-and-drop-su-calendario","status":"publish","type":"post","link":"https:\/\/help.qualiware.it\/qw-help\/esempio-di-drag-and-drop-su-calendario\/","title":{"rendered":"Esempio di drag and drop su calendario"},"content":{"rendered":"<p>Utilizzando codice Javascript \u00e8 possibile utilizzare il drag and drop sull&#8217;<a href=\"https:\/\/help.qualiware.it\/qw-help\/oggetto-calendario\/\">oggetto Calendario<\/a> per consentire all&#8217;utente di creare attivit\u00e0 a partire da un elenco.<\/p>\n<h3>ESEMPIO 1: DRAG &amp; DROP DA LISTBOX<\/h3>\n<p>E&#8217; possibile scaricare da <a href=\"https:\/\/help.qualiware.it\/qw-help\/wp-content\/uploads\/TEST-DRAG-DROP-CALENDARIO.zip\">qui<\/a> una query di esempio che include un form dove \u00e8 presente un calendario suddiviso su tre risorse, e una lista di attivit\u00e0 che \u00e8 possibile trascinare sul calendario per creare nuovi elementi.<\/p>\n<p>Si suggerisce di esaminare i seguenti eventi:<\/p>\n<p><strong>EventoRenderClient:<\/strong> contiene l&#8217;abilitazione del drag and drop sull&#8217;oggetto Listbox1. Da notare che viene assegnato l&#8217;evento &#8220;itemDrop&#8221; dell&#8217;oggetto, il quale alimenta 3 campi esterni che riportano la descrizione dell&#8217;attivit\u00e0 trascinata e la data e l&#8217;ora e la risorsa della cella di calendario sulla quale l&#8217;elemento \u00e8 stato trascinato. Viene poi attivato un postback che esegue l&#8217;evento Execute dell&#8217;oggetto ProcedureCode1, il quale crea l&#8217;elemento nel calendario a partire dai 3 suddetti campi.<\/p>\n<p><strong>EventoRender<\/strong>: restringe le ore visualizzate sul calendario alle sole ore lavorative. Ovviamente questo pu\u00f2 essere modificato secondo le esigenze.<\/p>\n<h3>ESEMPIO 2: DRAG &amp; DROP DA GRIGLIA CON NUOVOLAYOUT=FALSE<\/h3>\n<p>E&#8217; possibile scaricare da <a href=\"https:\/\/help.qualiware.it\/qw-help\/wp-content\/uploads\/TEST-DRAG-DROP-CALENDARIO-GRID.zip\">qui<\/a> una query di esempio che include un form dove \u00e8 presente un calendario suddiviso su tre risorse, e una lista di attivit\u00e0 in una griglia dove \u00e8 possibile selezionarne pi\u00f9 di una e trascinarla sul calendario per creare nuovi elementi.<\/p>\n<p>In questo caso, l&#8217;<strong>EventoRenderClient<\/strong> contiene l&#8217;abilitazione del drag sulla griglia, e del drop sulle celle del calendario.<\/p>\n<h3>ESEMPIO 3: DRAG &amp; DROP DA GRIGLIA CON NUOVOLAYOUT=TRUE<\/h3>\n<p>In questo caso la gestione del Drag&amp;Drop \u00e8 molto pi\u00f9 semplice, in quanto sulla griglia \u00e8 sufficiente assegnare a <em>True<\/em> la propriet\u00e0 <strong>ConsentiTrascinamento<\/strong>, assegnando poi la funzione <strong>externalDrop<\/strong> dell&#8217;oggetto Calendario per gestire l&#8217;aggiunta dell&#8217;elemento. I valori dei campi della griglia si possono facilmente reperire nel parametro <strong>Dati<\/strong>, come nel seguente codice, che va inserito nell&#8217;<strong>EventoRenderClient.<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"js\">$('#&lt;Scheduler1&gt;').externalDrop(\r\n  function(data,risorsa,dati) {\r\n    $('#&lt;PianificaCommessa&gt;').ServerExecute(data.toJSON(),risorsa,dati.Commessa)\r\n  }\r\n)<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Utilizzando codice Javascript \u00e8 possibile utilizzare il drag and drop sull&#8217;oggetto Calendario per consentire all&#8217;utente di creare attivit\u00e0 a partire da un elenco. ESEMPIO 1: DRAG &amp; DROP DA LISTBOX E&#8217; possibile scaricare da qui una query di esempio che include un form dove \u00e8 presente un calendario suddiviso su tre risorse, e una lista&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"ngg_post_thumbnail":0,"footnotes":""},"categories":[65],"tags":[80],"acf":[],"_links":{"self":[{"href":"https:\/\/help.qualiware.it\/qw-help\/wp-json\/wp\/v2\/posts\/28543"}],"collection":[{"href":"https:\/\/help.qualiware.it\/qw-help\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/help.qualiware.it\/qw-help\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/help.qualiware.it\/qw-help\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/help.qualiware.it\/qw-help\/wp-json\/wp\/v2\/comments?post=28543"}],"version-history":[{"count":3,"href":"https:\/\/help.qualiware.it\/qw-help\/wp-json\/wp\/v2\/posts\/28543\/revisions"}],"predecessor-version":[{"id":35605,"href":"https:\/\/help.qualiware.it\/qw-help\/wp-json\/wp\/v2\/posts\/28543\/revisions\/35605"}],"wp:attachment":[{"href":"https:\/\/help.qualiware.it\/qw-help\/wp-json\/wp\/v2\/media?parent=28543"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/help.qualiware.it\/qw-help\/wp-json\/wp\/v2\/categories?post=28543"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/help.qualiware.it\/qw-help\/wp-json\/wp\/v2\/tags?post=28543"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}