formattazione condizionale in report

Raccoglitore di domande e risposte relative a ScriptCase, il generatore di codice php per lo sviluppo rapido di applicazioni.
Regole del forum
Nel forum è vietato fare pubblicità senza avere l'autorizzazione dello staf di Netspecial.
Rispondi
admin.grrgroup
Messaggi: 4
Iscritto il: 23 nov 2020, 18:03

formattazione condizionale in report

Messaggio da admin.grrgroup » 27 giu 2023, 16:46

Buongiorno a tutti.
Ho creato un report pdf di tipo 'Records per riga', nel quale avrei necessità di formattare in modo differente alcuni campi a seconda del valore.
Se imposto i vari sc_field_style nell'evento OnRecord non funziona.
Qualcuno si è mai imbattuto nel problema?
Grazie

rino
Messaggi: 624
Iscritto il: 18 giu 2015, 15:42
Località: Pinerolo
Contatta:

Re: formattazione condizionale in report

Messaggio da rino » 29 giu 2023, 16:57

Certamente.
il report pdf si basa sulla libreria esterna TCPDF questo significa che le funzioni SC sono diverse o inesistenti.
SC ha traslato alcune funzioni per le altre è necessario utilizzare la funzioni della libreria, la documentazione la trovi sul sito originale .
per realizzare un buon prodotto è necessario operare con una precisa sequenza perchè SC si pone come interfaccia e se modifichi i parametri di SC allora da quel momento perdi alcuni automatismi per questo soggerisco una costruzione a step ordinati.
Ci sono due livelli su ogni pdf , il layout e il contenuto. con layout intendo ogni "cosa" che faccia parte del disegno del modulo (loghi ,linee, disegni ).
nel menu di sx trovi due rami layout pdf , quello che conta al afine è quello che apre diversi sotto rami (intrerfaccia, codice, posizionamento)
Codice è il nucleo di tutto , li dentro puoi modificare ogni cosa ma attenzione perchè se agisci sulla sezioen 'corpo' perdi la possibilità di disegnare avideo i posizionamenti dei campi, per cui agisci qui solo alla fine del disegno globale . le atre sezioni sono di libero uso ma evita di toccare quelle dele 'definizioni' perchè viene generata in automatico come quella del corpo.
nella sezioen corpo puoi inserire le istruzioni che desideri if comprese e quindi usare formattazioni condizionate (utilizzando le istruzioni tcpdf)
La tcpdf è la più potente e diffusa libreria pdf , fa tutto l immaginabile ma è a volte un po complessa nella documentazione , preferivo quella di alcuni anni fa .
diversamente puoi realizzare i pdf usando le altre app di sc inserendo manulamente le istruzioni tcpdf o fpdf (altra libreria disponibile e su sc ma di minore impatto).

esiste anche un altra via ovvero avere campi di comodo (testo) che popoli in fase di lettura dati . in quesot caso pui usare la formattazione html e comporre la stringa a tuo piacimento . Non sarebbe uno standard pulito ma è funzionale ,veloce e sicuro . ha il pregio di mantenere gli automatismi SC di posizionamento.
in questo caso usi la sezioen layout ( vedi sopra) per disegnare il modulo e poi lavori sui campi creandoli in fase di lettura record .
questo è un esempio di disegno modulo da inserie in sezioen layout

$style1 = array('width' => 0.2, 'cap' => 'square', 'join' => 'miter', 'dash' => '0,0', 'color' => array(25, 86, 118));
$style2 = array('width' => 0.2, 'cap' => 'square', 'join' => 'miter', 'dash' => '1,4', 'color' => array(25, 86, 118));
sc_pdf_rect(5, 30, 284, 150, 'S'); // rettangolo corpoprincipale
sc_pdf_rect(5, 182, 284, 20, 'S'); // rettangolo piede
sc_pdf_line(265, 30,265,180,$style2);
sc_pdf_line(215, 182,215,202,$style1);
sc_pdf_line(260, 193,260,202,$style1);
sc_pdf_line(215, 193,289,193,$style1); // orizzontale
sc_pdf_line(5, 39,289,39,$style1); // orizzontale testata


sto usando le macro traslate dentro sc
questa è invece una variabile multi linea popolata in evento onRecod
{avviso}="AVVISO<br> Salvo diversa specifica indicazione alla scadenza si provvederà ad emettere rinnovo secondo quanto contrattualmente stabilito<br>l'amministratore è responsabile dei dati ";
uso il tage BR la potevo usare qualunque altro tag HTML unica accortezza è usare il flag visualizza html nella definizione del campo .

spero di esserti stato utile
Rino Lo Turco
Consulente Informatico; Analista e Sviluppatore; ex IT Manager; Cons. Direzionale di Organizzazione; Consulente Tecnico legale; Esperto protezione dati personali; Internet Service Provider
felice utente e fruitore di ScriptCase

admin.grrgroup
Messaggi: 4
Iscritto il: 23 nov 2020, 18:03

Re: formattazione condizionale in report

Messaggio da admin.grrgroup » 03 lug 2023, 16:58

grazie mille!

Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite