It is currently 21 April 2025, 23:14 Advanced search

Stampa PDF in app on-line

Domande e risposte su come utilizzare Instant Developer Foundation al meglio

Stampa PDF in app on-line

Postby mcdok » 18 November 2015, 11:19

app on-line installata in caravel

vorrei aprire un PDF generato dall'app per poterlo poi stampare su una stampante collegata all'ipad

le istruzioni che vedete danno errore: 404 impossibile trovare il file o la directory

ho provato sia con outputFileName che con webFileName

Cattura.JPG
Cattura.JPG (24.06 KiB) Viewed 11169 times
mcdok
 
Posts: 855
Joined: 19 July 2011, 16:18

Re: Stampa PDF in app on-line

Postby lucabaldini » 18 November 2015, 11:26

La proprietà outfilename non è corretta perché quello è il PATH completo del file e non è un URL valido per il browser.

La funzione webFileName è quella corretta.

L'applicazione, se la usi con Chrome su PC, funziona correttamente? Il PDF si apre?

Se la risposta è sì io guarderei il debug di Caravel per vedere quale URL viene inviato dal server al client (Caravel) e capire perché non si apre.
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Stampa PDF in app on-line

Postby mcdok » 18 November 2015, 12:13

lucabaldini wrote:L'applicazione, se la usi con Chrome su PC, funziona correttamente? Il PDF si apre?

Se la risposta è sì io guarderei il debug di Caravel per vedere quale URL viene inviato dal server al client (Caravel) e capire perché non si apre.


Su Chrome PC funziona.

Provo a guardare il debug di Caravel...
mcdok
 
Posts: 855
Joined: 19 July 2011, 16:18

Re: Stampa PDF in app on-line

Postby mcdok » 18 November 2015, 13:22

Questo è il debug su caravel:

18-11-2015 14:05:02 - [Service::openWebView] Opening new window with URL = temp/PDF1131948911.pdf
18-11-2015 14:05:02 - [Service::openWebView] Missing HOST. URL adapted to http://192.168.1.83/temp/PDF1131948911.pdf
18-11-2015 14:05:02 - [Service::openWebView] Opening new WebView for URL = http://192.168.1.83/temp/PDF1131948911.pdf

18-11-2015 14:05:10 - [MyNSURLProtocol::startLoading] Handled URL = http://192.168.1.83/POMTEST/POMTEST.aspx?_CMD=EXIT
18-11-2015 14:05:10 - [Service::close] Closing service
18-11-2015 14:05:10 - [ViewController::onCloseService] Service with GUID=C35C5E36-F8FF-42C5-B717-750FAA05BC86 closed
18-11-2015 14:05:10 - [ViewController:loadUrl] Loading URL = http://www.progamma.com/caravel

L'applicazione sta su: = http://192.168.1.83/POMTEST/POMTEST.aspx
mcdok
 
Posts: 855
Joined: 19 July 2011, 16:18

Re: Stampa PDF in app on-line

Postby lucabaldini » 18 November 2015, 15:36

Bisognerebbe provare a replicarlo in un progetto semplice e inviarlo come malfunzionamento così indaghiamo...

Però, puoi provare ad aggirare il problema scrivendo:
Code: Select all
  ...
  if (Shell.isInsideShell())
    nf = "POMTEST/" + LIBRO.webFileName()
  else
    nf = LIBRO.webFileName()
  ...
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Stampa PDF in app on-line

Postby lucabaldini » 18 November 2015, 15:37

In effetti non credo di aver mai provato ad aprire un PDF direttamente da dentro a Caravel in una applicazione online... Di solito sviluppo applicazioni offline.

Sembra che sbagli a comporre un URL completo a partire da un URL relativo.

Tieni anche conto che non so se riuscirai a stampare il PDF da dentro Caravel direttamente... in quel caso si apre un'altra webView che mostra il PDF... non so se da lì si possa stampare.
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Stampa PDF in app on-line

Postby mcdok » 19 November 2015, 16:11

lucabaldini wrote:Però, puoi provare ad aggirare il problema scrivendo:
Code: Select all
  ...
  if (Shell.isInsideShell())
    nf = "POMTEST/" + LIBRO.webFileName()
  else
    nf = LIBRO.webFileName()
  ...


Così funziona, spero in una correzione per le prossime versioni.
In effetti si apre una web view da cui mi pare non si possa stampare.
C'è qualche alternativa per poter comandare una stampa sfruttando AirPrint?
mcdok
 
Posts: 855
Joined: 19 July 2011, 16:18

Re: Stampa PDF in app on-line

Postby lucabaldini » 20 November 2015, 15:44

In una applicazione offline (dove il file PDF è dentro al dispositivo) potresti usare la openfilein. In una applicazione online non è così semplice... il pdf è da un'altra parte e le applicazioni offline "risiedono" altrove (su un server esterno al dispositivo, dove si trova anche il PDF)... per stamparlo dovresti prima poterlo scaricare dentro al dispositivo e poi "passarlo" ad un'altra app (esempio acrobat) che ne faccia la stampa.

Purtroppo non mi vengono in mente altre idee per poter stampare direttamente un PDF da dentro Caravel.

Riguardo al problema dell'URL ho creato l'attività NPQ02549 per tenere conto di questa conversazione. Quando verrà valutata, potrai seguirne l'andamento con Instant Developer Roadmap.
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Stampa PDF in app on-line

Postby mcdok » 25 November 2015, 9:18

lucabaldini wrote:... per stamparlo dovresti prima poterlo scaricare dentro al dispositivo e poi "passarlo" ad un'altra app (esempio acrobat)


Grazie per le risposte.

Mi potresti dare un'indicazione di massima su come realizzare questa soluzione?
Dato che l'app installata in caravel è online, posso usare le funzioni della shell per il download?
mcdok
 
Posts: 855
Joined: 19 July 2011, 16:18

Re: Stampa PDF in app on-line

Postby lucabaldini » 27 November 2015, 14:01

Non è facile farlo, propio perché l'app è online e il "server" non è dentro al dispositivo ma sul server. Tutta la libreria shell opera sulla parte server e, in questo caso, non ti aiuta.

Ti suggerisco di contattare l'assistenza per studiare una possibile soluzione anche se non riesco a garantirti che tutto funzioni in qualunque configurazione. So di un utente che è riuscito a "forzare" lo scaricamento di un file dentro al dispositivo anche nel caso di una applicazione online ma è meglio studiare e analizzare il caso insieme.
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Next

Return to Tips & Tricks - Foundation

Who is online

Users browsing this forum: No registered users and 40 guests