Newsgroup: it.comp.lang.visual-basic
Titolo: [CR 8.5]Nome di campo sconosciuto nel report

Ciao a tutti, ho ancora bisogno del vs. supporto.
Ho alcuni file .rpt che richiamo da codice in un applicativo VB6. Il
programma pesca i dati da un db MSDE. I report aprono un DDT, una fattura,
un packing list, ecc.
I report hanno più o meno la stessa struttura: una vista nel database che
carica i dati nel report, e a seconda del tipo di documento da stampare il
programma sceglie la vista appropriata e il file .rpt da caricare. Le
differenze tra le varie viste - e i report corrispondenti - sono solo alcuni
campi che sono presenti in un determinato documento e mancano in un altro.
Tutte le viste sono simile, e attingono alle stesse tre tabelle.
Tutti i report funzionano a modo. Tranne uno.
Aprendo questo report (DDT.rpt), quando il codice arriva all'istruzione
CR1.Action = 1, il codice mi restituisce un errore. L'output è il seguente:
?err.Number
 20515
?err.Description
Error in File D:\1.Dati\Sviluppo\VB6\Progetto Vecchio\Reports\DDT.rpt:
Error in formula <Record_Selection>.
'{DC1.DC1_CODICE} = 28'
This field name is not known.
La cosa strana è che tutti gli altri report funzionano a modo. Ho
riscontrato questo malfunzionamento sia su WinXP Pro, sia su Win98se, sia su
Win2k.
Il campo in questione è l'id che identifica il documento: è presente in
tutte le viste e tutti i report ce l'hanno, o meglio: in nessun report
questo id documento è visualizzato in un controllo textbox, nemmeno nei
report che funzionano.
Naturalmente ho ricontrollato tutte le viste: il campo è presente, sia nelle
viste dei report degli altri tipi di documento, sia nella vista che fornisce
i dati al DDT. Ho ricontrollato tutti i campi e tutte le formule del file
DDT.rpt: il campo non è mostrato in una textbox, né in una formula, ma
soltanto nel Visual Linking Expert. Però d'altronde anche negli altri file
.rpt il campo è visibile solo nel Visual Linking Expert.
Ho tentato di ripristinare tutte le locazioni con Set Location, e gli alias
con Set Alias, ma non ho ottenuto risultati positivi.
In effetti non saprei dove altro guardare, ed è questo che vorrei sapere:
dove potrei andare a guardare, cioé da cosa potrebbe dipendere un errore del
genere, soprattutto con files della stessa struttura di cui tutti funzionano
tranne uno.
Spero proprio che possiate darmi una dritta per risolvere questo fastidioso
problema, perché l'unica alternativa che riesco ad immaginare è il ricreare
un nuovo report da zero, e non ho nemmeno la sicurezza che questo
comportamento non si ripresenti anche in quel caso.
Qualunque suggerimento sarà bene accetto. E vi ringrazio tutti in anticipo.
PS: Il codice con cui apro il report è riportato di seguito.
Private Sub btnPrintPreview_Click()
    Dim nomevista As String, msg As String, reppath As String
    ' seleziona il tipo di report da aprire
    nomevista = Choose(tipodoc + 1, "vDDTDoc", "vFAccDoc", "vFImmDoc",
"vNCredDoc", "vFRiepDoc", "vRicFiscDoc", "vPkLstDoc")
    reppath = Choose(tipodoc + 1, "DDT.rpt", "FAcc.rpt", "FImm.rpt",
"NCred.rpt", "FRiep.rpt", "RicFisc.rpt", "PkLst.rpt")
    reppath = App.Path & "\" & reppath
    With CR1
        ' imposta il file da aprire
        .ReportFileName = reppath
        ' costruisce la stringa per la proprietà Connect
        msg = "DSN = DBMag"
        msg = msg & ";UID=" & MSDEUId
        msg = msg & ";PWD=" & MSDEPwd
        .Connect = msg
        ' imposta l'aspetto e i parametri di visualizzazione del report
        .Destination = crptToWindow
        .WindowHeight = 600
        .WindowWidth = 800
        .WindowState = 2
        .WindowShowCloseBtn = True
        .WindowShowPrintSetupBtn = True
        .WindowShowZoomCtl = True
        .DataFiles(0) = "dbo." & nomevista
        ' passa la formula al report
        formulatext = "{DC1.DC1_CODICE} = " & CurrentID
        .SelectionFormula = formulatext
        .Action = 1
        ' imposta il fattore di zoom
        reportoption = CInt(Funx.ReadINI("Report", "ReportWindowZoomRatio",
glo.CaptionIniFile))
        .PageZoom reportoption
    End With
 End Sub
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

Salve a tutti. Visto che non ho ottenuto nemmeno un commento, mi permetto di
riproporre il mio ultimo quesito, sperando in una vostra collaborazione.
Inoltre ho anche intenzione di postare questa domanda sul NG dei database.
Grazie ancora.
