Italian Chiacchiericci

Star-Dust

Expert
Licensed User
Longtime User
io ho già creato una libreria che popola una maschera automaticamente assorbendo i dati da DB. Come facevamo in VB.

Lonatesso concetto è alla base di un report, devi popolare una pagina con i dati del DB
 

Xfood

Expert
Licensed User
Esatto E possibilmente anche con qualche variabile pubblica o al limite anche con la possibilità di fare pure qualche calcolo Che so tipo totale meno sconto uguale prezzo netto
 

Xfood

Expert
Licensed User
Oppure tipo le classiche somma per pagina una sorta di subito tale della pagina e poi il totale diciamo così in caso supponi una lista di fatture
 

Star-Dust

Expert
Licensed User
Longtime User
Esatto E possibilmente anche con qualche variabile pubblica o al limite anche con la possibilità di fare pure qualche calcolo Che so tipo totale meno sconto uguale prezzo netto
Vedremo.... tu stai pensando a un tuo bisogno specifico.. io a un uso più ampio.
 

Xfood

Expert
Licensed User
No no parlo per un uso generico diciamo di come funziona almeno La generazione dei report che fino a oggi ho utilizzato con vari linguaggi diciamo sto accesso è come dicevo prima vfp un po' tutti hanno diciamo così queste caratteristiche che sono comuni a tutta la generazione del report anche Crystal report così anche paste report di Delfi Diciamo che la maggior parte dei generatore di report ridanno questa funzionalità
 

LucaMs

Expert
Licensed User
Longtime User

Star-Dust

Expert
Licensed User
Longtime User
Si chiamano "place holders".

Non devi fare altro che creare dei tuoi "codici" da rimpiazzare (stringa.replace) e hai finito!

Ricordate le vecchie "stampa unione"?
Io questa pensavo
 

Star-Dust

Expert
Licensed User
Longtime User
Ho deciso, al momento non la realizzo non mi sembra un progetto cosi interessante o stimolante. Vediamo magari in futuro.

Si può chiedere a B4XCoder magari loro lo realizzano
 
Last edited:

Star-Dust

Expert
Licensed User
Longtime User
Pazienza, gia assaporavo un bel tool per fare i report.
Creare una libreria che traduce un modello XML in un PDF e lo popola potrebbe non essere complicato. Si dovrebbe stabilire un linguaggio/etichette per descrivere il documento. Un paio di settimane e lo realizzi, forse anche meno.

Ma un editor di testo che ti permetta di creare un modello XML realizzabili con strumenti visuali, dovrebbe essere simile a una pagina di WORD, che consenta di scrivere testo e posizionarlo in un punto specifico, creare tabelle o riquadri e infine inserire i Campi del DB nei punti che li desideri e che verranno popolati.
Di fatto devi creare un Test Editor, mediamente avanzato.

Aggiungiamo che hai chiesto anche che risolva delle formule o calcoli ( Totale= Somma(Riga)-Iva ecc....) e questo è un altra cosa ancora non semplice.

Le librerie che ho condiviso sono librerie piccole che ho realizzato in poche ore, o in ritagli di tempo e al massimo 3 giorni erano pronte.

Ma questo progetto credo soprattutto nella parte dell'editor sia abbastanza complesso e richiederebbe troppo tempo e impegno. Farlo a ritagli di tempo, significherebbe finirlo dopo molti mesi. Soprattutto perché un progetto di questa complessità se ci lavori a sorsi e morsi impieghi più tempo perché perdi il filo della logica.

Se questo progetto mi servisse nell'immediato, sarebbe diverso, fermerei gli altri progetti che seguo per concentrarmi su questo e in qualche settimana sarebbe pronto. Alcune librerie che ho realizzato, erano impegnative, ma servivano per il progetto che avevo in corso quindi gioco forza le ho messe in priorità, e infine le ho condivise con gli altri.

Ma non è questo il caso
 
Last edited:

Xfood

Expert
Licensed User
Tranquillo, capusco, la cosa che mi stranizza in po, e che il B4X e' una suite completa e molto potente,
Come mai il "Capo" non ha inserito un generatore di report integrato, con lo stile magari della creazione dei layout. Tutti i linguaggi molto meno potenti hanno un gestore/generatore visuale di report.
Ricordo che anche una mia vecchia fiamma Fivewin ha un gestore di report, con sorgente, quasi quasi si potrebbe pensare ad una migrazione...🤔🤔😀
 

Star-Dust

Expert
Licensed User
Longtime User
Tranquillo, capusco, la cosa che mi stranizza in po, e che il B4X e' una suite completa e molto potente,
Come mai il "Capo" non ha inserito un generatore di report integrato, con lo stile magari della creazione dei layout. Tutti i linguaggi molto meno potenti hanno un gestore/generatore visuale di report.
Ricordo che anche una mia vecchia fiamma Fivewin ha un gestore di report, con sorgente, quasi quasi si potrebbe pensare ad una migrazione...🤔🤔😀
certo se c'è un sorgente magari non si parte da zero. Spero che potrai emigrare il codice
 

Xfood

Expert
Licensed User
Il mio problema e che avendo poco tempo, faccio molte cose come dici tu a mozzichi e bocconi, e anche una cosa " semplice" che ci vorrebbe 1 settimana , mi impegna mesi. 😭😭😭
Se riesco nell'impresa chiaramente condivido tutto qui. Per adesso sto utilizzando un eseguibile esterno , che mi gestisce i report, mi permette di modificarli, fare il preview, esportarlo in vari formati, e chiaramente anche stampare, selezionare eventuale stampanti configurate in windows.
 

Star-Dust

Expert
Licensed User
Longtime User
Vero. Non solo, anche Erel sta diventando sempre meno presente, il che mi preoccupa. Non per la sua salute :), per la "salute" del sito e di B4X (starà morendo? L'operazione free & open source sarà stata una mossa giusta?)
@LucaMs sta diventando sempre meno presente, sono passate 2 ore senza che abbia scritto nulla, il che mi preoccupa. Non per la sua salute che non ne ha moltissima, ma per il sito B4X che langue.
 
Last edited:

Elric

Well-Known Member
Licensed User
Ciao!

Ho letto
e riesco a seguirlo e capirlo... ma non fino in fondo.

Intanto perché non so cos'è un "Reflector"... quale libreria dovrei usare?

Poi, se ho capito è tutta una questione di cache, laddove nella cache viene memorizzato come oggetto un dato primitivo a cui si cambia valore.

Quindi, se:
B4X:
   Dim r As Reflector
     #region Secret
    Dim cache() As Object = r.GetStaticField("java.lang.Integer$IntegerCache", "cache")
    cache(128+14)  = 3 
    #end region
fa sì che 14 + 1 = 4

allora se io scrivessi:
B4X:
   Dim r As Reflector
     #region Secret
    Dim cache() As Object = r.GetStaticField("java.lang.Integer$IntegerCache", "cache")
    cache(128+25)  = 3 
    #end region
darebbe 25 + 1 = 4?

(non riesco a fare la prova perché mi chiede una libreria per il "Reflector").
 

Star-Dust

Expert
Licensed User
Longtime User
Reflector è una libreria che ti permette di accedere agli oggetti Java (come JavaObject) ma a differenza ti consente di accedere alle variabili e metodi dichiarate Private che invece con JavaObject non potresti accedere.
La sintassi è diversa da JavaObject
 
Last edited:

Star-Dust

Expert
Licensed User
Longtime User
Ciao!

Ho letto
e riesco a seguirlo e capirlo... ma non fino in fondo.

Intanto perché non so cos'è un "Reflector"... quale libreria dovrei usare?

Poi, se ho capito è tutta una questione di cache, laddove nella cache viene memorizzato come oggetto un dato primitivo a cui si cambia valore.

Quindi, se:
B4X:
   Dim r As Reflector
     #region Secret
    Dim cache() As Object = r.GetStaticField("java.lang.Integer$IntegerCache", "cache")
    cache(128+14)  = 3
    #end region
fa sì che 14 + 1 = 4

allora se io scrivessi:
B4X:
   Dim r As Reflector
     #region Secret
    Dim cache() As Object = r.GetStaticField("java.lang.Integer$IntegerCache", "cache")
    cache(128+25)  = 3
    #end region
darebbe 25 + 1 = 4?

(non riesco a fare la prova perché mi chiede una libreria per il "Reflector").
Qui trovi la relflector, scaricala è molto importante se vuoi modificare le librerie compilate dall'interno

 

Star-Dust

Expert
Licensed User
Longtime User
Reflection è una libreria interna, fornita con l'installazione di B4A. Se non ce l'ha, ha avuto un problema d'installazione.
Sei vivo? wow io già stavo passando al pyton e php
 
Top