It is currently 8 June 2025, 10:20 Advanced search

Tipo Date e DateTime nell'importazione di classi esterne

Questo forum è nato con lo scopo di raccogliere le proposte di modifica di Instant Developer e discuterne insieme.

Tipo Date e DateTime nell'importazione di classi esterne

Postby mtozzi » 11 February 2011, 8:43

Nel caso si importi in un progetto inde una classe java che contiene un metodo getData() che ritorna un oggetto di tipo java.sql.Date la mappatura creata è la seguente:
Code: Select all
$0.getData()

Il tipo di dati ritornato viene impostato a Object e al tempo stesso viene creata un'ulteriore libreria nel progetto inde con la mappatura della classe java.sql.Date (solo il nome non i metodi).
In realtà sarebbe corretto che il valore di ritorno fosse mappato direttamente nel tipo date di Inde in modo da poterlo gestire nel visual code con una variabile date o date time. Ora come ora è necessario correggere la mappatura a mano impostandola nel seguente modo:
Code: Select all
new IDVariant($0.getData())

e modificando il tipo di dati ritornato a Date o Date Time a seconda si tratti di una data o di un timestamp.

Un'altra miglioria potrebbe essere nel passaggio inverso, ossia quando abbiamo una classe esterna con un metodo che ha parametri di tipo java.sql.Date. Vediamo un esempio:
Code: Select all
$0.setData($1)

Siccome inde utilizza per le date il tipo java.util.Date occorre correggere questa mappatura inserendo il casting esplicito a java.sql.Date in questo modo:
Code: Select all
$0.setData((java.sql.Date)$1.dateValue())
Last edited by mtozzi on 21 February 2011, 9:58, edited 1 time in total.
mtozzi
 
Posts: 413
Joined: 2 November 2010, 9:33

Re: Tipo Date e DateTime nell'importazione di classi esterne

Postby lucabaldini » 18 February 2011, 19:55

Ciao, dato che nella 10.0 ho migliorato leggermente la procedura di importazione delle classi e librerie esterne (trovi maggiori info qui http://doc.progamma.com/?ARTID=606C38EE-3973-4987-80EC-501C34070D36), potresti allegarmi un JAR dove si manifesti il problema?
In effetti è un po' folle che ci siano 2 tipi DATE... ma tant'è... proverò a tenere conto della cosa come eccezione, castando l'uno all'altro quando devo...
Se mi giri il JAR miglioro l'importazione e provo il tuo caso specifico...

Grazie mille!
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Tipo Date e DateTime nell'importazione di classi esterne

Postby lucabaldini » 18 February 2011, 19:56

Dimenticavo... puoi allegare il JAR qui nel forum... così non me lo perdo :-D
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Tipo Date e DateTime nell'importazione di classi esterne

Postby mtozzi » 21 February 2011, 7:20

Ecco il jar di esempio, l'ho zippato perché il forum non consente di allegare file con estensione jar.
Grazie
Attachments
ProvaDate.zip
Esempio
(795 Bytes) Downloaded 372 times
mtozzi
 
Posts: 413
Joined: 2 November 2010, 9:33

Re: Tipo Date e DateTime nell'importazione di classi esterne

Postby lucabaldini » 24 February 2011, 14:58

Fatto in versione 10.0 r3 (che verrà rilasciata lunedì 28 febbraio)... :-)

Trovi le info qui http://doc.progamma.com/?ARTID=606C38EE-3973-4987-80EC-501C34070D36 (l'articolo sarà aggiornato lunedì 28 febbraio dopo il rilascio)
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Tipo Date e DateTime nell'importazione di classi esterne

Postby mtozzi » 24 February 2011, 15:24

Lo stesso discorso vale per il tipo java.sql.Timestamp: ad esempio un metodo setTmTimestamp con un parametro di tipo java.sql.Timestamp dovrebbe essere importato nel modo seguente

Code: Select all
$0.setTmTimestamp(new java.sql.Timestamp($1.dateValue().getTime()));


Occorre usare questo trucchetto per passare da un oggetto java.util.Date utilizzato da inde a un oggetto di tipo java.sql.Timestamp.
Tutto per colpa del fatto che la libreria standard java ha diversi oggetti che fanno la stessa identica cosa.
mtozzi
 
Posts: 413
Joined: 2 November 2010, 9:33

Re: Tipo Date e DateTime nell'importazione di classi esterne

Postby lucabaldini » 24 February 2011, 17:13

Segnato...
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna

Re: Tipo Date e DateTime nell'importazione di classi esterne

Postby mtozzi » 9 March 2011, 8:35

Sempre riguardo all'importazione di classi java esterne segnalo che il tipo java short non viene gestito come un tipo numerico Integer inde ma come un generico object analogamente a quello che succedeva per le date
mtozzi
 
Posts: 413
Joined: 2 November 2010, 9:33

Re: Tipo Date e DateTime nell'importazione di classi esterne

Postby lucabaldini » 23 March 2011, 9:51

OK... i casi sono davvero tanti... ma ci ho lavorato un po' e credo di averne gestiti un bel po'...
Se ne mancano, fammi sapere.

Ah, dimenticavo... trovi le info dettagliate sul miglioramento qui http://doc.progamma.com/?ARTID=606C38EE-3973-4987-80EC-501C34070D36
User avatar
lucabaldini
Pro Gamma
Pro Gamma
 
Posts: 4990
Joined: 1 October 2010, 17:03
Location: Bologna


Return to Proposte di modifica

Who is online

Users browsing this forum: No registered users and 37 guests