messaggio per mercurial

Moderator: Enrico Maria Giordano

User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: messaggio per mercurial

Post by Silvio.Falconi »

Comunque mi sembra che anche questa tua seconda ipotesi non sia corretta... che valore avrebbe la prof.ssa Frati che ha 10 ore in 1D? 10?
il problema che alcune funzioni non le trovo
ho trovato solo le funzioni
classelib
aulalib
giornolib ( giorno libero per il docente e in base al campo do->punti precedenza)
PROFLIB ( c'è una schema formata da tanti SSSSSSSSSSSS in 6 campi dal l_lun a L_sab, per vedere se il docente ha chiesto di entrare alla seconda ora oppure avere un ora anziche un altra ecc) una specie di mammaptura e la funzione assegnaore usa questo controllo


poi alcuni controlli sono chiamati dentro ai tbrowse di clipper come chk_oreseq e CHK_FLAG
poi ho altre funzioni che non capisco bene ... probabilmente nel 92 facevo le pugnette...

PROFPRES
AULECOMP che gestisce i gruppi di cui ti ho parlato sopra
AULALAB
MATRIP
MAXCLA
CHK_GG
CHK_CLASSE
CHK_AULE
CHK_ORE
CONTAORE

Poi non trovo le funzioni che servono per esempio a calcolare che un docente
deve fare n ore min al giorno e n ore max al giorno
deve avere n ore min buche al giorno e n ore max al giorno
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
mercurial
Posts: 16
Joined: Wed Feb 04, 2015 2:26 pm

Re: messaggio per mercurial

Post by mercurial »

Ho letto velocemente i tuoi due post e devo rileggerli per cercare di entrare meglio nei meccanismi...


Ma prima ti devo chiedere di inquadrare meglio il lavoro che stai facendo e ciò che hai a disposizione, perché leggo delle frasi che possono sembrare contraddirsi mentre magari è solo un modo di esprimersi dovuto alla velocità.

Da quello che ho capito devi fare il porting di una vecchia applicazione scritta da te nel 1992 usando un tool di sviluppo di terze parti. Questo tool ha generato sorgenti che poi andavano compilati ed eseguiti. E questo programma funzionava regolarmente.

Sia di questa versione 92 che di eventuali successive non hai piu i codici e nemmeno gli eseguibili se non per l'eseguibile del 92.

Di questo 92 quindi hai un set completo eseguibili/basi dati che puoi usare come riferimento.

Ora, hai decompilato l'eseguibile e quindi hai i sorgenti - Valkirye crea dei file .SRC e anche mi sembra un paio di file di note di decompilazione.

Hai recuperato tutti i codici? Tutte le funzioni?
Il programma compila usando il decompilato? Funziona il link?
Lo so che andresti a creare un programma textmode ma è necessario capire che sia tutto a posto, che non manchi nulla...
Inoltre è un modo per verificare se passando da Clipper XX a Harbour magari è cambiato qualcosa nella gestione di qualche aspetto...
In più ti fornisce la possibilità di fotografare lo stato di alcune funzioni/variabili partendo da uno stato conosciuto... penso a quella local6 che citi... facendo girare l'app harbour, che valore assume?

Magari è una cosa che hai già fatto... ma non si capisce dai tuoi messaggi... perché quando dici:
Poi non trovo le funzioni che servono per esempio a calcolare.....
non riesco a capire se non ci sono nel decompilato, se non le riesci ad identificare, o cosa..
mercurial
Posts: 16
Joined: Wed Feb 04, 2015 2:26 pm

Re: messaggio per mercurial

Post by mercurial »

Ho provato a ricreare la struttura delle funzioni partendo dalla tua descrizione... ciclone() chiama ciclomater() o ciclomater() è eseguita dopo? assegnaOre() è chiamata da dentro ciclomater due volte (citi il for/next)... il pezzo di codice che hai postato è dentro assegnaOre? ma è troppo ridotto e con una descrizione scarna e non si riesce, almeno io, a inquadrarlo bene. Ad esempio nGiro.. che valori può assumere e che comportamenti diversi ha la funzione per i vari valori? così, per istinto, immagino che assegnaOre() sia una funzione abbastanza lunga, a meno che i vari array creati non vengano ritornati indietro...

Le variabili Local6 e Local7 (dal cui nome capisco che erano variabili Local di un programma decompilato) dove e soprattuto come sono poi usate? che nome g

L'assegnare un valore a Local6 come hai fatto tu non basta, perché Local6 è popolata con delle condizioni ben precise: !empty( GG_ORA ) AND OR->CLASSE != DA->CLA_DIS e nello stesso tempo NON DEVE stare il record dentro Local7... dalla tua citazione non si capisce. (BTW: cose' la tabella DA?) Magari anche forzando Local6 il codice successivo fa altri controlli che vanificano la tua forzatura...

Ma ad esempio, se "blocchi" delle ore a 5 docenti, che succede? Vengono rispettati i vincoli?

Che succede se parti da una certa situazione di DBF e fai fare lo stesso giro sul programma clipper e quello fivewin? Ovviamente ricreando gli indici... a proposito, non è che ci sono di mezzo, in qualcuna di queste funzioni, degli indici temporanei o "strani" come il $$1?


Per quanto riguarda DO->oredispo, se sicuro che sia un CHAR? In questo passaggio, l'alias OR punta proprio al file originale ORARIO? Non magari ad un file temporaneo dove il campo è ora numerico?



Proprio in questi giorni sto facendo una conversione di un programma da Clipper 87 a Harbour, documentando tutto in un blog, quindi capisco perfettamente quello che stai passando perché ci sono passato anche io nell'ultimo mese...


Ho visto che mi hai lasciato la mail, ti scrivo
User avatar
Silvio.Falconi
Posts: 4956
Joined: Thu Oct 18, 2012 7:17 pm

Re: messaggio per mercurial

Post by Silvio.Falconi »

mercurial wrote: Sia di questa versione 92 che di eventuali successive non hai piu i codici e nemmeno gli eseguibili se non per l'eseguibile del 92.
Il problema più grave che nel 2012 io avevo rifatto già il programma convertendolo dal dos del 1992 e nella cartella source avevo messo un cartella old dove erano tutti i vecchi sorgenti. Ora nel riprenderlo non ho trovato ne la cartella e ne un versione corretta del 2012. Ho perso tutto un disco fisso , ho provato persino con Stellar per riprendere i file del disco ci ha provato anche un mio amico carabiniere con un programma che hanno i cc ma niente da fare.
Quindi sono andato alla ricerca dei sorgenti del 92 in una marea di dischetti HD e DD...ed ho trovato parti di sorgenti...Péurtrop o da allora ho fatto 5 trasloshi e cambiato 3 citta sicchè non posso pretendere di trovarli tutti.


Forse se il codice era un clipperSummer87 era più facile, il Walkyrie per clipper5 non mette i nomi delle variabili per quanto riguarda il clipper5 ma le le mette con il clipper87.
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC
Post Reply