Newsgroup: it.comp.appl.access
Titolo: stesso idfornitore su nuova maschera

buon giorno a tutti
 
 
volenvo aprire una nuova maschera
su clic di un un controllo mantenendo
lo stesso idfornitore di quest'ultima.
 
 
Grazie per l'aiuto
 
 
 


docmd.openform FormName:=nomedelform,WhereCondition:="nomecampodifiltro 
=" & nomedelcontrollochecontieneilvaloredifiltro
 
-- 
 
ac (x=y-1)


Chiarisci bene l'ambito della cosa...
La Maschera che apri è basata sulla stessa tabella o una Relazionata
nella quale IdFornitre è FK...?
 
@Alex

 ha scritto nel messaggio 
news:1d768864-3df1-464f...@u6g2000vbg.googlegroups.com...

___________
ciao Alex e grazie Alessandro
 
la maschera che devo aprire ha come testata una query da tbFattureFornitori
e il dettaglio Maschera altra query da
tbFattureFornitori legata uno a molti con DettaglioFattureFornitori
 
 
Mentre la maschera che da controllo uso per aprirla
è in realtà una sottomaschera da query:
sql:
SELECT ZX_a.NomeFornitore, ZX_a.ImponibileFo, ZX_a.IVAFo, ZX_a.Totale, 
nz([ZX_a]![Totale])-Nz([Coperta]) AS Coprire, TBFornitori.IDFornitore, 
IIf(IsNull([zx_b].[totale]),0,[zx_b].[Totale]) AS Coperta
FROM (ZX_a LEFT JOIN ZX_b ON ZX_a.NomeFornitore = ZX_b.NomeFornitore) LEFT 
JOIN TBFornitori ON ZX_a.NomeFornitore = TBFornitori.NomeFornitore;
 
che su doppio clic del controllo "coprire"
dove ho inserito:
 
 
    If Me!Coprire > 0 Then
 
        DoCmd.OpenForm FormName:="FattureFornitori", 
WhereCondition:="IdFornitore =" & IDFornitore
 
    Else
 
        Beep
        MsgBox "NON C'E' NULLA DA FATTURARE", vbOKOnly, ""
 
    End If
 
Ma la maschera che si apre non ha l'IdFornitore inserito.
 
Grazie 
 
 

 dove ho inserito:
 
salve!
 
purtroppo ancora non sono riuscito ad aprire la maschera FattureFornitori_1 
in un nuovo record con l'IdFornitore già
impostato.
 
Riassumo il problema.
In pratica ho una maschera con 2 sottomaschere,
con origine record tutte da query.
Nella maschera ho una casella combinata
non associata, dove inserisco il forniitore
1-sottomaschera_A: dove visualizzo tutti i documenti da coprire con le 
fatture da ricevere
2-sottomaschera_B: dove visualizzo le fatture ricevute (che carico con la 
maschera FattureFornitori_1)
 
Ora volendo aprire la maschera FattureFornitori_1(che utilizzo per inserire 
le fatture da pagare) su di un nuovo record con il fornitore già impostato,
(il medesimo visualizzato sulla casella combinta non associtata), ho 
inserito
su doppio clic del controllo totale della sottomaschera_A, questo codice:
        DoCmd.OpenForm FormName:="FattureFornitori_1", 
WhereCondition:="[Forms]![FattureFornitori_1]![IdFornitore] =" & 
Me!IDFornitore
 
ho provato anche questo:
        DoCmd.OpenForm "FattureFornitori_1", acNormal, "", 
"[Forms]![FattureFornitori_1]![IdFornitore]", acAdd, acNormal
 
In entrambi i casi la maschera FattureFornitori_1 si apre ma completamnete 
vuota cioè senza il fornitore già impostato,
come invece io vorrei
 
Grazie in anticipo per l'aiuto. 
 
 


WhereCondition:="nomedelcampo(*) =" & me!idfornitore
 
(*) Immagino "idfornitore"
-- 
 
ac (x=y-1)

 ha scritto nel messaggio 
news:nYoBq.104777$GZ3....@tornado.fastwebnet.it...

Grazie Alessandro
 
ho fatto cosi'
        DoCmd.OpenForm FormName:="FattureFornitori_1", 
WhereCondition:="IdFornitore =" & Me!IDFornitore
 
Apre la maschera FattureFornitori_1 ma ancora senza l'id fornitore inserito
 
 

>
 
La questione e' se la fontedati (recordsource) di FattureFornitori_1 
contiene gia' il fornitore "idFornitore". Se non esiste il record non 
c'e' verso che sul formato in apertura tu lo possa trovare impostato.
Se il record e' nuovo "un" metodo per impostarlo e' questo:
 
           DoCmd.OpenForm FormName:="FattureFornitori_1",
  WhereCondition:="IdFornitore ="&  Me!IDFornitore
 
Forms!FattureFornitori!idFornitore = me!idFornitore
 
altro metodo potrebbe essere via la OpenArgs (cfr. Help) o l'inverso di 
quanto ti ho suggerito cioe',sulla open di FattureFornitori_1 :
 
me!idfornitore = forms!nomedelformchiamante.form!idfornitore
 
me!idfornitore = 
forms!nomedelformchiamante!eventualenomedelsubform.form!idfornitore
 
 
-- 
 
ac (x=y-1)


 
Ciao Alessandro
Ok
con questo sopra ora funziona bene
Grazie 1000 
 
 

 ha scritto nel messaggio 
news:4ed63a19$0$1380$4faf...@reader2.news.tin.it...

ora ho altro problema,
che se ho per un fornitore una fattura gia' inserita anziche'
aprirne una nuova, ne' apre una precedentemente
inserita.
 
 

 ha scritto nel messaggio 
news:4ed64899$0$1382$4faf...@reader2.news.tin.it...

cosi' funziona
        DoCmd.OpenForm "FattureFornitori_1", acNormal, "", 
"[Forms]![FattureFornitori_1]![IdFornitore]", acAdd, acNormal
         Forms!FattureFornitori!idFornitore = me!idFornitore