Newsgroup: it.comp.appl.access
Titolo: errore: immettere valore parametro

ciao a tutti
 
su apertura di alcune form ho questi codici...
 
1-Set myForm = Me
  Call fctEmailCliente_InvA
  Me!SM_Email.Form.RecordSource = Me!SM_Email.Form.RecordSource
_______
 
2-Set myForm = Me
  Call fctEmailFornitore_InvA
  Me!SM_Email.Form.RecordSource = Me!SM_Email.Form.RecordSource
_______
 
il problema è che, quando passo p.e. dall'apertura della form
con il primo codice a quella con il secondo,
la maschera mi da errore,
immettere valore parametro...
Maschere!M_InvioAnagrafica!IdFornitore,
 
questo perchè la nuova query non
è ancora creata.
 
Come posso risolvere?


Quale query?
cosa e' Maschere?
 
 
-- 
ac (x=y-1)
Aborro il Killfile
(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)


ciao Alessandro e grazie
queste sono 2 delle 4 query che utilizzo....
In "Select Case strmyForm" sono elencate le maschere,
dove in ciascuna di esse c'è la subform "SM_Email"
con origine record "Qry_Email" creata dalle function 
sottoriportate........
Il filtro relativo a ciascuna form, è creato dinamicamenete
in questo modo:
"WHERE IdCliente =" & "Forms!" & _
  myForm.Name & "!IdCliente" & " "
 
con questo codice su apertura della mainForm
p.e. (relativa alla Function fctEmailFornitore_InvA())
    Set myForm = Me
    Call fctEmailFornitore_InvA
    Me!SM_Email.Form.RecordSource = Me!SM_Email.Form.RecordSource
 
__________________________
Public myForm As Form
1________Inizio___________
Public Function fctEmailCliente_InvA()
 
Dim strSql As String
Dim strmyForm As String
 
strmyForm = myForm.Name & IIf(myForm.OpenArgs = 3, 1, "")
 
strSql = vbNullString
strSql = strSql & "SELECT "
strSql = strSql & "IdEmailCliente, "
strSql = strSql & "IdCliente, "
strSql = strSql & "EmailCliente As Email, "
Select Case strmyForm
  Case Is = "M_InvioListaCaricoCliente"
  strSql = strSql & "Invio_ListaCarico As InvioDoc, "
  strSql = strSql & "InvA "
  Case Is = "M_InvioListaCaricoCliente1"
  strSql = strSql & "Invio_ListaCarico1 As InvioDoc, "
  strSql = strSql & "InvA1 As InvA "
  Case Is = "M_InvioSollecitoChiusure"
  strSql = strSql & "Invio_SollecitoChiusure As InvioDoc, "
  strSql = strSql & "InvA2 As InvA "
  Case Is = "M_InvioMiaFattura"
  strSql = strSql & "Invio_MiaFattura As InvioDoc, "
  strSql = strSql & "InvA3 As InvA "
  Case Is = "M_InvioAnagrafica"
  strSql = strSql & "Invio_AnagraficaCliente As InvioDoc, "
  strSql = strSql & "InvA4 As InvA "
 
End Select
strSql = strSql & "FROM TbEmailClienti "
strSql = strSql & "WHERE IdCliente =" & "Forms!" & _
  myForm.Name & "!IdCliente" & " "
strSql = strSql & "ORDER BY EmailCliente"
 
DBEngine(0)(0).QueryDefs("Qry_Email").SQL = strSql
 
End Function
1_________fine____________
 
2________Inizio___________
Public Function fctEmailFornitore_InvA()
 
Dim strSql As String
 
strSql = vbNullString
strSql = strSql & "SELECT "
strSql = strSql & "IdEmailFornitore, "
strSql = strSql & "IdFornitore, "
strSql = strSql & "EmailFornitore As Email, "
Select Case myForm.Name
  Case Is = "M_InvioConfermaCaricoFornitore", "M_SollecitoDistinteCarico"
  strSql = strSql & "Invio_Carico As InvioDoc, "
  strSql = strSql & "InvA "
  Case Is = "M_InvioChiusuraCaricoFornitore"
  strSql = strSql & "Invio_Chiusura As InvioDoc, "
  strSql = strSql & "InvA1 As InvA "
  Case Is = "M_InvioSollecitoFattureFornitori"
  strSql = strSql & "Invio_SollecitoFatture As InvioDoc, "
  strSql = strSql & "InvA2 As InvA "
  Case Is = "M_InvioMiaFattura"
  strSql = strSql & "Invio_MiaFattura As InvioDoc, "
  strSql = strSql & "InvA3 As InvA "
  Case Is = "M_InvioAnagrafica"
  strSql = strSql & "Invio_AnagraficaFornitore As InvioDoc, "
  strSql = strSql & "InvA4 As InvA "
 
End Select
strSql = strSql & "FROM TbEmailFornitori "
strSql = strSql & "WHERE IdFornitore =" & "Forms!" & _
  myForm.Name & "!IdFornitore" & " "
strSql = strSql & "ORDER BY EmailFornitore"
 
DBEngine(0)(0).QueryDefs("Qry_Email").SQL = strSql
 
End Function
2_________fine____________

cut ....
 
in pratica il problema nasce perchè la subform
con la query "vecchia" (cioè la query creata
con l'ultima form aperta); viene caricata prima
della creazione delle nuova query.
Ora, quale evento è bene usare per creare la nuova query,
prima che venga caricata quella già esistente?
 
Grazie