Urgente - Custom Buttons - multiple Buttons

alessapan

Member
DaDaBIK version 10.3-Manarola enterprise, installed on 27/08/2020 ), the latest version of DaDaBIK is 10.3-Manarola released on 26/08/2020

System info
PHP Version: 7.2.33
mysql version: 5.7.29-32-log
Web server: Apache
Client: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36

Ciao,
non mi è chiaro se dadabik prevede la possibilità di avere, nella stessa FORM, 2 o più "Custom Buttons" che possano avere funzioni diverse. Ad esempio un bottone in posizione "top" per effettuare una variazione su tutti i record, ed uno sulla singola "row" per riportare il record allo stato precedente o escluderlo dall'operazione massiva.

Se si c'è una sintassi che differenzia il nome del pulsante?

Grazie

Alessandro
 

alessapan

Member
Ciao,
non ho visto alcuna risposta se sia possibile definire più Custom Button diversi.
In alternativa sarebbe molto comodo sapere se, dopo aver assegnato una funzione di Update al bottone, si potesse eseguire la stampa con un template PDF.

Grazie
 

alessapan

Member
Ho risolto!

per avere più pulsanti basta agire sulla dichiarazione iniziale $cnt = 0 e successivi.

Rimane la domanda se si può aggiungere del codice per richiamare direttamente la stampa del template PDF.

Grazie

Alessandro
 

eugenio

Administrator
Staff member
Ciao,
è possibile anche se non proprio immediato.

Qua:
https://dadabik.com/forum/read.php?1,20784,22265#msg-22265
c'è un post in cui se ne parla.
 

alessapan

Member
Ciao Eugenio,

ho visto il post e la sintassi da utilizzare che hai indicato è questa:
window.open('index.php?tablename=....&function=search&export_to_pdf=1&pdf_template=......', '_blank');

ora nel mio caso riesco a creare il pulsante che richiama la seguente funzione:
function dadabik_stampa_missioni()
{
window.open('index.php?tablename=missioni_da_richiedere&function=search&export_to_pdf=1&pdf_template=ModuloRimborso.html', '_blank');
}

che genera il seguente errore:

Warning: Use of undefined constant window - assumed 'window' (this will throw an Error in a future version of PHP) in /web/htdocs/www.firstcislpadovarovigo.it/home/my_dadabik/include/custom_functions/custom_buttons.php on line 239

Fatal error: Uncaught Error: Call to undefined function open() in /web/htdocs/www.xxxxxxx.it/home/my_dadabik/include/custom_functions/custom_buttons.php:239 Stack trace: #0 /web/htdocs/www.xxxxxxx.it/home/my_dadabik/index.php(0): dadabik_stampa_missioni('missioni_da_ric...', NULL, NULL) #1 {main} thrown in /web/htdocs/www.xxxxxxx.it/home/my_dadabik/include/custom_functions/custom_buttons.php on line 239

la riga 239 è esattamente l'unica riga della funzione: window.open('index.php?tablename=missioni_da_richiedere&function=search&export_to_pdf=1&pdf_template=ModuloRimborso.html', '_blank');

Di sicuro non ho compreso la sintassi che devo utilizzare ed avevo utilizzato sia ModuloRimborso che ModuloRimborso.html.

Dove Sbaglio?

Grazie mille


Alessandro
 

alessapan

Member
Ciao Eugenio,

ecco la soluzione per assegnare ad un CUSTOM BUTTON la stampa in PDF di un template specifico.
Da PHP (lato server) non è possibile aprire una nuova finestra, bisogna utilizzare una funzione in JS.
La funzione va scritta il custom_funcion.js e può essere richiamata all'interno del file Custom_buttons.php con la seguente sintassi:
.....tralascio le istruzioni del Pulsante....
function dadabik_stampa_rimborso()
{
echo "<script>dadabik_stampaPDF()</script>";
exit;
}

il file JS conterrà il seguente codice:
....nel mio caso viene caricata la pagina che contiene i campi per il template PDF "tubolare" e poi vengono richiamati 2 template distinti.

function dadabik_stampaPDF()
{
location.href='index.php?function=search&tablename=rimborsi';
window.open('index.php?tablename=rimborsi&function=search&export_to_pdf=1&pdf_template=ModuloRimborso');
window.open('index.php?tablename=rimborsi&function=search&export_to_pdf=1&pdf_template=LetteraIncarico', '_blank');
}

Evviva!!!!!
 
Top