Newsgroup: it.comp.appl.access
Titolo: Programma per etichettatura connesso con AS400

Ciao a tutto l'NG.
Scusate se Vi rompo ma ho la necessità di capire perchè succede questo:
ho realizzato una applicazione per etichettatura a livello industriale che
importa una pesante anagrafica da AS400 in locale, per snellire questa
procedura ho implementato una funzione che importa parzialmente l'anagrafica
a seconda dell'utente che accede al programma ( non tutti gli utenti
stampano etichette di tutti i prodotti , quindi ignoro nell'importazione
tutti i record che non servono ).
Su click del comando di importazione eseguo la call a un modulo che con una
condizione if.....else a seconda della presenza di un flag in anagrafica
esegue a sua volta una call o un'altra.
Public Sub ConfermaAggiornAS400()
On Error GoTo Err_ConfermaAggiornAS400
If DLookup("AbilitazioneImportazioneFabbrica", "TabSicurezza", "Utente =
[UtenteOk]") = True Then
    Call AggiornamentoDaAs400AltoProfilo
    Else
    Call ImportazioneDaAs400Parziale
    End If
Err_ConfermaAggiornAS400:
    MsgBox Error$
    Exit Sub
End Sub
Se non sono abilitato quindi eseguo ImportazioneDaAs400Parziale
Public Sub ImportazioneDaAs400Parziale()
Dim TitoloC, MessaggioC, FinestraDialogoC, RispostaC
    Const MBC_YESNO = 4, MBC_ICONSTOP = 48, MBC_DEFBUTTON2 = 256
    Const IDYESC = 6, IDNOC = 7
    TitoloC = "Conferma aggiornamento dati da AS/400"
    MessaggioC = "Confermi l'aggiornamento dell'Anagrafica Prodotti da
AS/400 ? (Attenzione : prima di confermare occorre far scollegare tutti gli
utenti che utulizzano il programma di Stampa Etichette !)"
    FinestraDialogoC = MBC_YESNO + MBC_ICONSTOP + MBC_DEFBUTTON2
    RispostaC = MsgBox(MessaggioC, FinestraDialogoC, TitoloC)
    If RispostaC = IDYESC Then
        DoCmd.OpenQuery "SvuotaTabAnaArticoliLingua"
        DoCmd.OpenQuery "EstrazioneDatiDaAnpa200f_NO_FAB"
        MsgBox "Aggiornamento dati da AS/400 completato !", vbInformation
    Else: Exit Sub
        End If
End Sub
Ora la domanda, tutto funziona regolarmente tranne che per il fatto che al
termine dell'importazione dopo il MsgBox di conferma dell'avvenuta
importazione mi compaiono sul video 2 o 3 finestre che sembrano quelle
classiche di errore con niente scritto dentro e che non posso fare altro che
chiudere per continuare nell'applicazione.
Come diavolo le evito?
Ho sbagiato qualche cosa nelle routine?
Vi ringrazio tutti anticipatamente..........

 ha scritto nel messaggio
news:QpNwa.4001$lK4....@twister1.libero.it...

Anch'io normalmente uso file AS/400 per le applicazioni access ma non ti
conviente usare il collegamento ODBC per gestire le tabelle AS/400?
Eviti il caricamento dei dati e non uccidi la tua rete con un carico di
lavoro esagerato
Per le routine mi sembrano scritte bene
Marco

Il collegamento lo offettuo in ODBC per importare in locale i dati, non lo
faccio on line in quanto il tracciato record è impressionante, ho dovuto
costruire diverse viste logiche in quanto Access non era in grado di
leggerlo tutto di botto, cronometro alla mano comunque impiego 25 - 30
secondi al massimo per importare i dati in locale e lo si fa una volta al
giorno.
Adesso comunque sto implementando una gestione a Release Record, ossia in un
campo su AS numero progressivamenteo ogni modifica fatta a un  record,
all'atto del collegamento ad AS importo ovviamente solo i record che hanno
RELEASE superiore a quella che ho su Access.
Ti ringrazio per il consiglio ma non sai proprio dirmi cosa sono quelle
finestre che mi compaiono?
Sembra che esca dalla routine con un errore o nella maniera errata......
Se hai idee......
Grazie.


 finestre che mi compaiono?
Non ne ho idea ma il buon senso mi direbbe di testarle con l'ultima
release stabile di Access patchata che hai a disposizione.
Lorenzo

 
manca l'uscita dalla routine prima della gestione dell'errore.
se non hai errori, la tua routine esegue l'if-else e poi non esce, ma 
passa ad eseguire la routine Err_ConfermaAggiornAS400, dato che non hai 
messo l'uscita dalla routine.
-- 
+-------
| Paolo opg
|
| janickg ( at ) hotmail ( dot ) com
+-------

 messo l'uscita dalla routine.
Ti ringrazio sinceramente, ho risolto il problema.
Come sempre quando si fanno degli errori cosě stupidi, si passa un sacco di
tempo a battere la testa contro le stesse cose senza vedere quello che č
evidente.
Ti ringrazio ancora.
SILVIO
