L'RTC è supportato dall'IDManager, con alcune limitazioni che ora vado a descrivere.
L'applicazione EsempiLB, per esempio, utilizza l'RTC ed è stata deployata con l'IDManager... quindi ho la certezza che funziona :-)
Veniamo alla risposta dettagliata... In.de, quando prepara la pubblicazione di una applicazione, guarda se l'applicazione ha il flag "Genera dati RTC" attivato (lo trovi nella videata delle proprietà dell'applicazione). Qualora ce l'abbia In.de, durante la preparazione, attiva automaticamente il flag "Attiva RTC per questa applicazione" che normalmente trovi nella videata di compilazione e che devi ricordarti di attivare quando compili per la pubblicazione (non sai quante volte mi sono dimenticato di farlo quando pubblicavo manualmente EsempiLB!). Quindi se In.de vede che l'applicazione usa l'RTC (Genera dati RTC attivo) ti attiva automaticamente l'RTC in fase di compilazione (tanto stai pubblicando... e se l'applicazione usa RTC lo deve sicuramente fare in produzione!).
In.de, inoltre, cerca il database che contiene i dati RTC (quello con il flag "" attivato per intenderci) e, in fase di preparazione e calcolo delle modifiche ai DB:
- attiva il flag "Aggiorna i dati RTC"
- disattiva i flag "Ricrea tabelle RTC" e "Crea dati di profilazione utenti"
In questo modo le modifiche ai dati RTC vengono inviate come se fossero modifiche al DB. Se provi a pubblicare un'applicazione che usa l'RTC vedrai che il database che contiene i dati RTC risulta tra quelli da modificare. Se guardi il DDL trovi tutte le modifiche che rigenerano i dati RTC di design time (non quelli di configurazione). Questo è, ad oggi, l'unico limite. Ogni volta che pubblichi In.de rigenera i dati di design time (cosa che io ho sempre consigliato di fare dato che mentre sviluppi, se usi l'RTC, occorre mantenere aggiornati i dati di design time). In fase di pubblicazione devi decidere se è necessario o meno aggiornare i dati RTC. Farlo non fa male... però può richiedere qualche secondo in più alla procedura di pubblicazione.
Ovviamente il database RTC deve già esistere dato che, come avrai già visto, non ci sono flag relativi all'RTC nella videata di pubblicazione quindi non è possibile dire ad In.de "in fase di pubblicazione crea anche tutte le tabelle RTC e RTCU necessarie al modulo"... Non ci sono i flag RTC... non ancora...
Nella versione 10.1 voglio portare l'RTC allo stato dell'arte. In particolare voglio che In.de, quando prepara la pubblicazione, scopra quali dati RTC devono essere aggiornati, lavorando in differenziale anche per i dati RTC, proprio come fa già con la struttura del database. Oggi In.de contatta il DB e calcola le differenze e prepara il DDL con le sole modifiche. Voglio che faccia la stessa cosa anche con l'RTC.
Inoltre vorrei che fosse automatico l'aggiornamento della struttura delle tabelle RTC. Mi spiego meglio. Oggi se aggiungo un nuovo flag ai pannelli devo decidere se inserirlo nell'RTC. Se lo faccio rompo le scatole a tutti dato che poi devo creare appositi script SQL (per tutti i DB!) per aggiornare le tabelle RTC. E voi dovreste eseguire quello script su tutti i DB dei vostri clienti! Bene, io vorrei che fosse automatica la modifica alla struttura delle tabelle RTC e che fosse compito di In.de gestire la cosa proprio come fa oggi con le tabelle ordinarie.
Appena fatto questo, posso finalmente inserire nell'RTC tutto ciò che oggi manca (e che alcuni utenti mi hanno chiesto nel tempo, compreso te :-)). Sono sempre stato restio nell'aggiungere le proprietà all'RTC per il problema che ti ho descritto sopra. Quando In.de lavorerà in differenziale, potrò sbizzarrirmi :-)
Per concludere in 10.1 l'RTCBase diventerà completamente obsoleto. Sarà compito dell'IDManger permetterti di tradurre e configurare l'applicazione. Dentro all'IDManager ci saranno nuove videate che permetteranno di tradurre e configurare l'applicazione. Come descrivevo nel mio post (
http://blog.progamma.com/in-arrivo-la-versione-10-di-instant-developer/) l'RTC dell'IDManager sarà integrato con Google-Translate e Microsoft-Translate e sarà possibile tradurre subito al volo tutta l'applicazione! Con un click!
Beh, spero di aver risposto a tutte le tue domande... Se hai altri dubbi non esitare!