Welcome, Guest
Username: Password: Remember me
Qui si parla italiano

TOPIC:

Nuovo progetto 13 Oct 2022 22:24 #24154

  • Gfb22
  • Gfb22's Avatar
  • Topic Author


  • Posts: 52
  • Grazie all'incoraggiamento di Wolfgang, inizio oggi un nuovo progetto per trasferire in X# alcune mie applicazioni VO.
    Si tratta di applicazioni scritte (a partire dal 1989) per soddisfare le esigenze di un'importante cooperativa agricola del Centro Italia (sono agronomo).
    Le principali applicazioni scritte per questa azienda riguardano la gestione delle colture e dei piani colturali con i relativi centri di costo; la gestione dei soci con il calcolo dei ristorni di fine anno e, infine, un'applicazione per l'inventario e aggiornamento dei cespiti ammortizzabili.
    L'ultima release delle mie applicazioni è del 2018, dopo di che non me ne sono più curato.
    Ora i tecnici della cooperativa mi hanno contatto offrendomi l'opportunità di aggiornare il mio software svecchiandolo per assicurare ancora un futuro ad un software che, a loro dire, non ha concorrenti per quelle che sono le loro specifiche esigenze.
    Oggi ho iniziato a fare delle prove seguendo gli esempi nella documentazione e sono abbastanza soddisfatto: possiamo farcela, anche se il cammino sarà lungo...
    Buon lavoro a tutti e grazie a Wolfgang!
    Ecco, in particolare, le risorse che mi sono state utili per compilare la prima e semplice applicazione di esempio:
    • Migrate from VO using XIDE and the Vulcan runtime
    • Migrating apps from VO to X#
    • Migration Guide

    Please Log in or Create an account to join the conversation.

    Last edit: by robert.

    Nuovo progetto 14 Oct 2022 06:58 #24156

    • wriedmann
    • wriedmann's Avatar


  • Posts: 3367
  • Ciao,
    non mi resta che dire: buon lavoro!
    Se hai bisogno, sicuramente tutti quì aiuteranno volentieri (e grazie a Google Translator anche i colleghi che non parlano l'Italiano).
    Wolfgang
    Wolfgang Riedmann
    Meran, South Tyrol, Italy

    www.riedmann.it - docs.xsharp.it

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 14 Oct 2022 08:25 #24157

    • softdevo@tiscali.it's Avatar


  • Posts: 177
  • Conta pure su di me

    Danilo

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 14 Oct 2022 08:55 #24158

    • robert
    • robert's Avatar


  • Posts: 3600
  • Ti aiuteremo quando possiamo
    (usando Google Traduttore)
    Roberto
    XSharp Development Team
    The Netherlands

    Please Log in or Create an account to join the conversation.

    Last edit: by robert.

    Nuovo progetto 14 Oct 2022 09:47 #24161

    • Chris
    • Chris's Avatar


  • Posts: 3984
  • XSharp Development Team
    chris(at)xsharp.eu

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 14 Oct 2022 14:45 #24173

    • FFF
    • FFF's Avatar


  • Posts: 1422
  • Google è buono, DeepL è meglio :P
    Carlo
    Regards
    Karl (X# 2.16.0.5; Xide 2.16; W8.1/64 German)

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 14 Oct 2022 16:00 #24176

    • wriedmann
    • wriedmann's Avatar


  • Posts: 3367
  • <g>... I'm in the fortunate situation that the only culprit for bad Italian (and German of course) I'm myself.
    Wolfgang
    Wolfgang Riedmann
    Meran, South Tyrol, Italy

    www.riedmann.it - docs.xsharp.it

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 15 Oct 2022 19:27 #24183

    • Gfb22
    • Gfb22's Avatar
    • Topic Author


  • Posts: 52
  • ...primi problemi: ho provato a compilare una piccola applicazione di prova (che usa anche 1 solo report di RP2) e, giustamente, mi da subito il messaggio allegato.Dalle applicazioni CAVO ho la DLL rp2RDD32.DLL:1) dove vanno messe le DLL o LIB mancanti perché vengano 'viste' dal compilatore? Esistono (anche acquistando ReportPro 2 for .Net - Source Code Binaries) le corrette DLL compatibili?2) in RP2 ho il corrispondente file AEF che, tuttavia è praticamente impossibile da compilare perché del tutto incompatibileGrazie! :-)
    Attachments:

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 16 Oct 2022 08:00 #24185

    • wriedmann
    • wriedmann's Avatar


  • Posts: 3367
  • Ciao,
    purtroppo librerie VO non possono essere usate con applicazioni X#, bisogna avere la rispettiva versione X#.
    Per RP2 la versione X# esiste, ma deve essere acquistata a parte perchè non è (e non era mai) un progetto open source.
    Quello che hai di Report Pro come sorgenti non è che la parte che deve essere integrata nell'applicazione, e anche avendo le sorgenti il lavoro di porting sarebbe molto lungo e difficile in quanto fa uso massiccio delle Windows API.
    Saluti
    Wolfgang
    Wolfgang Riedmann
    Meran, South Tyrol, Italy

    www.riedmann.it - docs.xsharp.it

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 16 Oct 2022 09:28 #24186

    • robert
    • robert's Avatar


  • Posts: 3600
  • Gian,
    If you have a proof of purchase (invoice or email with download instructions) for ReportPro for Visual Objects, then we will grant you FREE access to the ReportPro binaries and/or sourcecode for X#.

    Robert
    XSharp Development Team
    The Netherlands

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 17 Oct 2022 07:14 #24187

    • Gfb22
    • Gfb22's Avatar
    • Topic Author


  • Posts: 52
  • Grazie!
    E' comunque mia intenzione acquistare la versione #X di Report Pro.
    Per Robert: del precedente acquisto di RP2 per VO non ho più la documentazione. Grazie comunque per la disponibilità!

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 17 Oct 2022 08:38 #24189

    • robert
    • robert's Avatar


  • Posts: 3600
  • Gian,
    If you cannot "prove" that you have bought ReportPro before, then you can buy a license. The costs are EUR 99 for the binaries only and EUR 299 for the binaries AND the source code,

    Robert
    XSharp Development Team
    The Netherlands

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 27 Oct 2022 19:35 #24277

    • Gfb22
    • Gfb22's Avatar
    • Topic Author


  • Posts: 52
  • Ho acquistato RP2 for .NET e guardato un po' di esempi e la documentazione disponibile (non specifica per XSharp).
    Non sono riuscio a capire come legare le nuove librerie al progetto CAVO e quali modifiche sono necessarie per utilizzare la nuova versione di RP2 nelle app.
    Sicuramente è semplice ma non sono riuscito: chi può fornirmi qualche consiglio sulla strada da percorrere?
    Grazie in anticipo!

    I purchased RP2 for .NET and looked at some examples and documentation available (not specific to XSharp).
    I couldn't figure out how to bind the new libraries to the CAVO project and what changes are needed to use the new version of RP2 in apps.
    It is certainly simple but I have not succeeded: who can give me some advice on the way to go?
    Thanks in advance!

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 27 Oct 2022 21:13 #24278

    • ic2
    • ic2's Avatar


  • Posts: 1667
  • Hello Gian,

    In Rp2dev.chm, Class Overview there's a basic sample:
    METHOD PrintReport CLASS StandardShellWindow
    LOCAL oReport AS RpReport
    LOCAL cJobName,cPrint2Filename,cCaption,cMessage AS STRING
    oReport := RpReport{ SELF, "C:\RP2\BIT.RPT" }
    IF oReport:IsValid
           cJobName             := "My Report"
           cPrint2Filename      := "REPORT.PRN"
           cCaption            := "My App Name"
           cMessage            := "Printing in progress..."
    oReport:Print(cJobName,cPrint2Filename,cCaption,cMessage)
    ENDIF
    oReport:Close()

    Include rp2rdd32.dll or lib (I think one is the source version) and it should already work.

    I have a more complete sample also supporting the creation of PDF's, selection of trays etc. If you want the sample, leave your mail address, I'll make a few small modification and send it to you.

    Dick

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 29 Oct 2022 17:59 #24286

    • Gfb22
    • Gfb22's Avatar
    • Topic Author


  • Posts: 52
  • Hello Dick,
    Thank you for your answer.
    The problem is that rp2rdd32.dll is not compatible with xSharp: in CAVO 2.6 it works fine but switching to xSharp doesn't work.
    My doubts concern which new DLLs I have to insert (in XIDE/Application/Properties/references/Browse/Browse disk for dll files)) for the RP2 classes to be recognized (Classes like RpReport, ecc.)
    I attach the image with the DLLs that I tried to insert in XIDE: the reference to RP2's RpReport is still missing.
    However, I leave you my email and I thank you if you want to send me some examples.
    Thank you!
    Gfb:
    Attachments:

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 30 Oct 2022 07:45 #24288

    • Chris
    • Chris's Avatar


  • Posts: 3984
  • Hi Gian,

    Indeed the file rp2rdd32.dll is for the Vo version of RP2, not for X#. For X#, you have already used the correct RP2 files in the references. The Xsharp.Rdd.dll and the two XSharp.Macrocompiler dlls you do not need them (they get loaded automatically), so you can remove them, but you need to also add references to XSharp.Core and XSharp.RT.

    Also you need to make sure that the "Dialect" (in App properties/General/Dialect) is set to "VO" and the option "App Properties/Compiler/ins USe implicit namespace" is checked, so the compiler automatically resolves the names of the RP2 (and VO SDK) classes.

    Easiest way to get a quick start is to actually create a new app, use form the Gallery the "Standard VO MDI" template, which is very similar to that of VO and has all the regular references already added, and then just add the references for RP2 (the X# version of course again).

    .
    XSharp Development Team
    chris(at)xsharp.eu

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 30 Oct 2022 08:14 #24290

    • FFF
    • FFF's Avatar


  • Posts: 1422
  • Chris,
    pmfji, but i just had a look into gallery - there is "Standard VO Mdi" and "Standard VO Mdi -X#-runtime". At a quick glance the former uses dialect VN instead of Vo and quite some .vh includes, but both reference the X# runtime dlls.
    Might cause some confusion ;-)
    Regards
    Karl (X# 2.16.0.5; Xide 2.16; W8.1/64 German)

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 30 Oct 2022 08:24 #24291

    • Chris
    • Chris's Avatar


  • Posts: 3984
  • Hi Karl,

    Ah, right, one of the two has remained by accident. Will remove it, thanks!
    XSharp Development Team
    chris(at)xsharp.eu

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 30 Oct 2022 08:33 #24292

    • Gfb22
    • Gfb22's Avatar
    • Topic Author


  • Posts: 52
  • Thanks Chris.Here are the correct RP2 references. Later I try.
    I also have another error which, perhaps, is related to a missing DLL: "... error XS0246: The type or namespace name 'Sub_ProgDial' could not be found (are you missing a using directive or an assembly reference?)"Below is the code that gives the error.
    METHOD Timer() CLASS StandardShellWindow

    LOCAL oProg as Sub_ProgDial
    IF cTimerCopia == "C"
    IF nResult > 32
    self:Pointer := Pointer{POINTERARROW}
    InfoMsg("Copia terminata con successo.", self )
    Y_LAST_BAC := Today()
    LastSalva()
    ELSE
    ErrorMsg("Copia non effettuata", "Errore " + Str(nResult) ) // , "Ripristino archivi", SELF )
    ENDIF
    ELSEIF cTimerCopia == "R"
    IF nResult > 32
    self:Pointer := Pointer{POINTERARROW}
    InfoMsg("Ripristino effettuato.", self) // Nota: serve anche rendere MODAL la prosecuzione del programma
    // RESTORE da DBF FILE
    IF File(S_DirIni + "LASTAM.DBF")
    Y_MODARCH := CToD("") // Siamo sicuri che prende il valore da LAST.DBF
    LastRestore()
    ELSE // Né Last.MEM né Last.DBF
    ErrorMsg("Errore", "Non trovo il file LASTAM.DBF")
    self:FileExit() // termina il programma
    ENDIF
    AggVar() // Imposta variabili di sistema
    self:Caption := ("AMMORTAMENTI visual per " + NomeUtente + " Esercizio " + mEsercizio)
    FCopy("C:\gfbmine\report\Amm\AmmInd.DBF", S_DirIni + "AmmInd.DBF")
    // Controlla se gli archivi hanno la struttura aggiornata
    // Le due date non corrispondono: avverti, aggiorna gli archivi e salva LAST.DBF
    IF Y_MODARCH # G_MODARCH
    AggiornaStruct(self) // Provvede anche ad inviare Msg iniziale all'utente
    ENDIF
    oProg := Sub_ProgDial{self}
    oProg:Show() // Ricrea indici: al termine di Sub_ProgDial c'è già il Beep
    ELSE
    ErrorMsg("Errore","Ripristino archivi non effettuato: errore " + Str(nResult) )
    ENDIF
    self:Pointer := Pointer{POINTERARROW}
    ENDIF

    RETURN nil


    Attachments:

    Please Log in or Create an account to join the conversation.

    Nuovo progetto 30 Oct 2022 09:19 #24293

    • FFF
    • FFF's Avatar


  • Posts: 1422
  • Gian,
    i really doubt, "Sub_ProgDial" to be part of dotNet, Vo X# or RP2 ;-), so mark it, CTRL-Shift-F, "find all" - will list all occurences in this xide-project. If there's none, i'd suspect you wrote this in some other project...
    Regards
    Karl (X# 2.16.0.5; Xide 2.16; W8.1/64 German)

    Please Log in or Create an account to join the conversation.

    Moderators: wriedmann