Baseelements - BE_ExecuteSystemCommand

Come utilizzare gli script. Automatizzare gli archivi. Utilizzo dei pulsanti

Moderatore: Moderatori

Rispondi
David1_69
Messaggi: 18
Iscritto il: mercoledì 1 febbraio 2023, 11:23
Versione FileMaker: 19
Sistema operativo: win e mac

Baseelements - BE_ExecuteSystemCommand

Messaggio da David1_69 » giovedì 2 marzo 2023, 16:43

Buonasera a tutti, volevo avere un esempio pratico di come usare questa istruzione (Ho Baseelements su server Filemaker 19)

Non riesco a lanciare l'istruzione in quanto riesco solo ad inserirla in una variabile ma poi non so come eseguirla poichè ho solo variabili.

Spero di essere stato chiaro.

Grazie mille.

Davide

Avatar utente
fabio.beri
Messaggi: 1967
Iscritto il: sabato 4 ottobre 2014, 16:24
Versione FileMaker: 2023
Sistema operativo: Win/Mac

Re: Baseelements - BE_ExecuteSystemCommand

Messaggio da fabio.beri » giovedì 2 marzo 2023, 19:03

Buonasera

Si può utilizzare con un IMPOSTA VARIABILE. Esempio:

BE_ExecuteSystemCommand ( "/bin/bash -c \"commandhere\"" ) dove tra le virgolette, ci sono le istruzioni che il sistema deve eseguire.
Fabio Beri
Moderatore FMPro.it
Sviluppatore OmniaGest 5 - FileMaker 15/16/17/18/19

Omnia Studio

-----------------------------------------
http://tinyurl.com/omniagest2024

David1_69
Messaggi: 18
Iscritto il: mercoledì 1 febbraio 2023, 11:23
Versione FileMaker: 19
Sistema operativo: win e mac

Re: Baseelements - BE_ExecuteSystemCommand

Messaggio da David1_69 » giovedì 2 marzo 2023, 19:44

Ok, grazie, ma se inserisco questo in imposta variabile, come faccio a eseguirlo, devo reimpostare ogni volta che voglio lanciarlo una variabile, quindi basta inserire imposta variabile così in uno script senza null'altro? Così non me lo esegue.

Grazie

Davide

Avatar utente
fabio.beri
Messaggi: 1967
Iscritto il: sabato 4 ottobre 2014, 16:24
Versione FileMaker: 2023
Sistema operativo: Win/Mac

Re: Baseelements - BE_ExecuteSystemCommand

Messaggio da fabio.beri » venerdì 3 marzo 2023, 11:50

Il comando IMPOSTA VARIABILE, effettua quel lavoro: impostare una variabile. Quasi tutti i plug in, lavorano in questo modo. Facciamo un esempio:

IMPOSTA VARIABILE "$result" con BE_ExecuteSystemCommand ( "/bin/bash -c \"commandhere\"" )

Quindi, a fine esecuzione della riga, la variabile $result si valorizzera con il risultato del comando lanciato dentro la variabile.

Si può fare anche con IMPOSTA CAMPO [NOMECAMPO] con BE_ExecuteSystemCommand ( "/bin/bash -c \"commandhere\"" )

Deve eseguirlo per forza. Se il comando è sbagliato, il risultato sarà un punto interrogativo.

Buon lavoro
Fabio Beri
Moderatore FMPro.it
Sviluppatore OmniaGest 5 - FileMaker 15/16/17/18/19

Omnia Studio

-----------------------------------------
http://tinyurl.com/omniagest2024

David1_69
Messaggi: 18
Iscritto il: mercoledì 1 febbraio 2023, 11:23
Versione FileMaker: 19
Sistema operativo: win e mac

Re: Baseelements - BE_ExecuteSystemCommand

Messaggio da David1_69 » venerdì 3 marzo 2023, 15:18

Forse a questo punto è un problema di configurazione.

In locale funziona, ma via webdirect no.

Il comando che memorizzo nella variabile è il seguente:

/usr/local/bin/pdftk /Library/'FileMaker Server'/Data/Documents/to/pdf/PROVAnew.pdf /Library/'FileMaker Server'/Data/Documents/to/new/PROVAnew.pdf cat output /Library/'FileMaker Server'/Data/Documents/to/output/file.pdf

Poichè la cartella che il server riesce a vedere è Documents nella directory di Filemaker Server, ho creato li sotto la sottocartella to con le varie sottocartelle.

Grazie a chi mi aiuta.

Davide

David1_69
Messaggi: 18
Iscritto il: mercoledì 1 febbraio 2023, 11:23
Versione FileMaker: 19
Sistema operativo: win e mac

Re: Baseelements - BE_ExecuteSystemCommand

Messaggio da David1_69 » lunedì 6 marzo 2023, 9:02

Ora ho trovato che la sintassi ha dei problemi.

Inserendo la sintassi così: BE_ExecuteSystemCommand ( "/bin/bash -c /usr/local/bin/pdftk /Library/FileMaker\ Server/Data/Documents/to/pdf/PROVAnew.pdf /Library/FileMaker\ Server/Data/Documents/to/new/PROVAnew.pdf cat output /Library/FileMaker\ Server/Data/Documents/to/output/file.pdf") mi da questi errori:

Error: Unable to find file.

Error: Failed to open PDF file:

   /Library/FileMaker

Error: Unable to find file.

Error: Failed to open PDF file:

   Server/Data/Documents/to/pdf/PROVAnew.pdf

Done.  Input errors, so no output created.




Penso che il problema sia la directory dove si trova il server (Filemaker Server) che nel nome ha uno spazio. Ho provato con gli apici, ho provato come da esempio ed ho provato con le virgolette ma mi da sempre errore, come devo fare? Grazie a tutti

Davide

Avatar utente
fabio.beri
Messaggi: 1967
Iscritto il: sabato 4 ottobre 2014, 16:24
Versione FileMaker: 2023
Sistema operativo: Win/Mac

Re: Baseelements - BE_ExecuteSystemCommand

Messaggio da fabio.beri » lunedì 6 marzo 2023, 11:12

Se la riposta è un errore del tipo "unable to find file" può solo significare che il percorso è sbagliato. Non credo sia un problema di spazio nel nome del FileMaker Server e sicuramente gli apici messi cosù non aiutano, anzi...

Bisogna individuare il giusto percorso. Sono cose che non si risolvono via forum. Spiacente.
Fabio Beri
Moderatore FMPro.it
Sviluppatore OmniaGest 5 - FileMaker 15/16/17/18/19

Omnia Studio

-----------------------------------------
http://tinyurl.com/omniagest2024

Rispondi