Newsgroup: it.comp.lang.vo-clipper
Titolo: Indici corrotti???

Ho un programma che uso per il lavoro che spesso si pianta.
E' compilato
con il Clipper 5.x e da' questo errore:
"Error DBFNTX/1012 Corruption
detected: c:\ppp\pippo.dbf"
Non so molto del Clipper, ma penso che sia
colpa di qualche indice
corrotto? E' cosi'??
Come posso fare per
recuperarlo?? Ovviamente non ho i sorgenti.
Ho provato anche a
decompilarlo per vedere se, ricompilandolo,
gli errori sparivano, ma il
"Valkirie" si pianta, dandomi "General
Protection Fault".
--------------------------------
Inviato via 
http://usenet.iol.it

 ha scritto nel messaggio
news:151Z26Z65Z225Y1...@usenet.iol.it...


Come posso fare per recuperarlo??
Forse è una cosa ovvia, ma te la dico lo stesso.
Hai verificato se nel programma esiste una procedura che ricostruisce
i file indice?
Potrebbe chiamarsi Riorganizzazione Archivi, Ricostruzione files
chiavi, Riordino dati, o qualcosa di simile.
Se la trovi dovresti aver risolto.
Altrimenti, se conosci qualcuno che può aiutarti di persona, potresti
servirti di una utility (come DBU, ad es.) che consente di accedere ai
dbf e ricostruire gli indici (ma devi conoscerne le chiavi, od
arrivarci per deduzione... ecco perchè forse ti serve uno un po'
esperto che possa dare uno sguardo ... "alla situazione").
ciao

 corrotto? E' cosi'??
Se il messaggio è proprio quello che hai scritto allora gli indici non
c'entrano. E' il DBF che è corrotto. Se fossero gli indici ad essere
corrotti il messaggio sarebbe stato qualcosa come
"Error DBFNTX/1012 Corruption
detected: c:\ppp\pippo.ntx"
Se è proprio così allora segui i consigli che ti hanno già dato.
Altrimenti prova ad aprire il solo PIPPO.DBF con il dBase, con il DBU o
con altre utility per vedere se è effettivamente corrotto (magari lo è
un solo record, nel qual caso prova a cancellarlo).
EMG
--
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg

un solo record, nel qual caso
prova a cancellarlo).
Il fatto e' che l'eseguibile non parte proprio!
Quando succede, allora dove lavoro io scrivono alla ditta, e la ditta
rimanda il file eseguibile e dice di copiarlo su quello vecchio, io pensavo
che ricostruissero semplicemente gli indici, o qualcosa del genere... 
E
mi chiedevo come potevo farlo io, perche' la ditta ha il brutto "vizio" di
farsi PAGARE per questa "manutenzione"...
Percio' ho cercato di darci
un'occhiata...Sono un programmatore, ma
NON di Clipper... Ho scoperto che
e' stato compilato con Clipper 5.x,
ma la cosa piu' ASSURDA e' questa: in
pratica nella cartella ci sono due files: esegui.exe e pippo.dbf, oltre a
una sotto cartella con i dati veri e propri che si possono consultare.
Ho
esaminato il "pippo.dbf" per vedere le tabelle e mi dava errore "formato
non riconosciuto" con qualunque programma: Access, Excel, ecc ecc. L'ho
visto con un editor e ho scoperto che e' un eseguibile MS-DOS.. Poi mi e'
venuto un atroce dubbio, e poi la conferma: SONO LO STESSO FILE!!! Sono
IDENTICI!!!
In pratica esegui.exe e' un prog clipper che ha bisogno di
alcune tabelle e le va a leggere nell'altra copia di se' stesso rinominata
pippo.dbf.!!!!!!!! O almeno credo sia cosi'.
Scusatemi, ma sono un
novellino del Clipper...
Se tolgo il file pippo.dbf il programma
ALL'INIZIO da' l'errore
"ERROR: PIPPO NOT PRESENT" e TERMINA subito dopo.
Il programma di per se' e' abbastanza banale, anzi ci sono limitazioni
notevoli alcune volte, e potrei anche rifarlo io decentemente, ma il
vero
problema sono i circa 650 mega di dati che consulta.
Le tabelle sono state
fatte MOLTO MA MOLTO MALE, e non e' facile ricostruire
i record
correttamente, in pratica fa centinaia di join diciamo cosi' inutili,
nella stessa tabella ci sono dati incorrelati tra loro, ecc ecc.. Diciamo
che
il database non e' stato progettato da professionisti...


 ha scritto nel messaggio
news:151Z26Z91Z23Y1...@usenet.iol.it...


 Francesco D'Aquila
Beato te! questo invece è il motivo che mi ha fatto abbandonare i DBF,
troppo critica la gestione degli indici.
Il fatto che, a meno che non usi prodotti di terze parti tu non hai una
gestione (in rete) di client/server, rende gli indici dei DBF troppo
dipendenti dal perfetto funzionamento di troppe variabili, una SK di rete,
un protocollo installato male o modificato dalla successiva istallazione di
un antivirus, il server che quel giorno ha deciso di fare i capricci, una
RAM che sbrocca una volta ogni 6 mesi (e allora si che son dolori), oppure
sotto NOVELL (un append quando lastrec*recsize = n*1024 [ci sono voluti 3
anni per capirlo]), etc.
Ed allora corri, reindicizza (con relativo fermo e perdita sicura di qualche
record, di quale poi? e su notti per assicurare il cliente su quale tra le
100.000 fatture aveva perso una riga  e poi in quella riga cosa c'era ?).
Per non parlare poi di quando tu sei l'autore del programma, ma il gestore
di rete è un'altro che "non ha mai nessuna colpa".
Almeno con client/server molti problemi si bypassano, una transazione va o
non va a buon fine, unico problema si schianta il server, ma allora......
Tutto ciò mi ha fatto passare ad un DataBase relazionale client/server.
Danilo Giuliani
www.softdevo.com
in...@softdevo.com
sup...@softdevo.com

 ha scritto nel messaggio
news:151Z26Z65Z225Y1...@usenet.iol.it...


 ha scritto nel messaggio
news:151Z26Z91Z23Y1...@usenet.iol.it...


[...]
Non voglio correre il rischio di giungere a conclusioni affrettate, ma
da quanto ho letto, la cosa mi "puzza" non poco.
Non credo sia un problema legato ai DBF, ma una sorta di "protezione"
o "vincolo" per una costante opera di manutenzione.
Già dal nome (PIPPO) mi chiedo chi possa utilizzare una tabella di
lavoro che si chiama così. Per le fasi di sviluppo ne ho viste anche
di peggio, ma come versione definitiva no.
Hai provato a rinominare il .EXE in .OLD e il .DBF in .EXE?
Giusto per vedere se parte.
Saluti
===============================================
Antonello Negrone - Biella - Italy
anto...@anc-software.it
www.anc-software.it

 o "vincolo" per una costante opera di manutenzione.
e' molto probabile che sia cosi'
si tratterebbe, secondo me, di un dozzinale mezzuccio di protezione...
oppure, e questo sarebbe ancora + grave e se la periodicità della corruzione
e abbastanza frequente,  un volgare mezzo x farsi pagare *l'aggiornamento*
dal *programmatore*.
francosignore
ps
pensavo di aver inviato ieri una risposta al NG con questa conclusione
invece ho scritto, per errore, in pvt ad EMG con il quale mi scuso.

 troppo critica la gestione degli indici.
Come al solito sei partito in quarta contro gli indici dei DBF quando,
probabilmente, non c'entrano un tubo con il problema in esame...


 aaaargh ;-)))
<big snip>
scusa Alessandro,
desidero farti notare che hai postato 2 righe di risposta quotandone molte
di piu', non solo: hai,anche,  risposto *sopra* l'msg precedente.
questo non vuole essere un msg polemico, ti prego di credermi sulla parola,
e , tra l'altro non sei il solo, anche altri, in questo 3ead hanno fatto la
stessa cosa.
io credo fermamente nei ngroup e li frequento con piacere da, oramai,
diversi anni.
il nostro e' uno dei pochi ngroup che non rispetta x l'80% le regole
generali di comunicazione quali x es:
*non usare le maiuscole a sproposito
*rispondere sotto il msg precedente
*quotare solo le parti  necessarie del msg a cui si risponde
*non offendere gli altri partecipanti
*non farsi pubblicita'
*non postare html
....
io penso che basti poco x rispettare queste semplici regole che, tra
l'altro, rendono il ngroup piu' leggibile e godibile.
ti prego, ripeto, di non volermene anche xche' questo *appello* e' rivolto a
tutti noi, anche a me: non e', del resto, questo mio msg una, piccola,
violazione della nquette?
scusatemi se potete....
francosignore

Hai ragione... pero' dare la colpa agli indici per un errore che parla
esplicitamente di dbf mi ha fatto perdere il lume della netiquette ;-)))
Una domanda: esiste una faq? (se si, l'errore 1210 e le sue variazioni
dovrebbe essere nella top five...)


 dovrebbe essere nella top five...)
La FAQ esiste ma attualmente ammonta a sole due domande. Te la senti di
scrivere tu qualcosa riguardo l'errore 1210?


 scrivere tu qualcosa riguardo l'errore 1210?
Al momento ho due programmi sul fuoco oltre al lavoro principale e sto
scrivendo il mio primo romanzo...
Se potete aspettare settembre 2003... ;-) (ah, spero di essere ancora
occupato a scrivere per allora, vorrebbe dire che sta andando bene :-) )
PS Se posso, mando qlcs entro una decina di giorni...


 esplicitamente di dbf mi ha fatto perdere il lume della netiquette ;-)))
grazie per aver capito lo spirito, assolutamente non polemico, del mio
msg...
anche se, come puoi notare, si continua...
ritornando al problema posto dal ns. amico io resto sempre del parere che
non  si tratti di un *vero* dbf, ma di un file di controllo... un mezzuccio
delle *elementari* insomma.
francosignore

 delle *elementari* insomma.
A propo di mezzucci delle elementari...
Mi date un sistema SICURO e FACILE (per quanto possibile) per proteggere un
EXE dalle installazioni non autorizzate?
Calcolando che devo dare un floppy (non installo io)...
C'e' un sistema per leggere tipo il nr del disco fisso o altro?


Se vuoi posso provare a darti una mano ma dovresti darmi qualche
informazione in più!
Comunque non aprire i file .dbf con altri programmi che non siano DBU o
DBASE III perchè potresti
rovinarli. Per verificare se il file è un DBF basta vedere il primo byte
che dovrebbe essere 03 esadecimale !
Fammi sapere !
Antonio Verardo 
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Giusto per vedere se parte.
certo. E' la prima cosa
che ho fatto, ma naturalmente non
funziona...


Antonio Verardo
Si grazie.
Cmq adesso ho rimediato una vecchia versione dell'eseguibile
da un Cd di
"aggiornamento" e adesso parte.
"parte" per modo di dire visto che da' in
continuazione errori
riguardo a vari files... Qualcuno puo' dirmi dove
posso trovare
un elenco dei codici di errore del clipper e una breve
descrizione delle possibili cause?? Scusate, ma del clipper
so proprio
poco...


 so proprio poco...
Sulle Norton Guides. Oppure, se non ce le hai, su Internet mi ricordo
che c'è un sito con l'elenco degli errori, ma non ricordo l'indirizzo.
Prova a fare una ricerca.


SOTTOCARTELLA?
ci sono un sacco di file, alcuni .dbf,
altri cn estensione
sconosciuta, tipo .111 .032 e altri in formato testo,
dove vengono memeorizzati dei numeri, penso il numero di record...
