Newsgroup: it.comp.appl.access
Titolo: cosa sbaglio ?

buonasera  a tutti
 A2003
questa sub serve a stampare una comanda filtrata per IdOrdine e 
IdTipoPietanza
non riesco a capire perchè mi chieda prima della stampa di immettere 
Valore Parametro "IdTipoPietanza" sebbene la stringa FiltroPiet facendo 
debug mi sembra corretta.
qualsiasi valore inserisca nell'inputbox la stampa viene giusta 
riguardo a IdOrdine ma non filtrata  per IdTipoPietanza
segue codice
 
Public Sub StampaComanda(StrPrinter As String, NomeRpt As String, 
IdOrdi As Integer, ModComanda as integer)
Dim FiltroPiet As String
Select Case ModComanda
Case 0 'stampo una comanda completa con Tipo pietanza=TUTTE
        FiltroPiet = "[IdOrdine] =" & (IdOrdi)
Case 1 'stampo una comanda completa con Tipo pietanza=PRIMI
        FiltroPiet = "[IdOrdine] =" & (IdOrdi) & " and [IdTipoPetanza]= 
1"
Case 2  'stampo una comanda completa con Tipo pietanza=Secondi
        FiltroPiet = "[IdOrdine] =" & (IdOrdi) & " and [IdTipoPetanza]= 
2"
Case 5  'stampo una comanda completa con Tipo pietanza=Bevande
        FiltroPiet = "[IdOrdine] =" & (IdOrdi) & " and [IdTipoPetanza]= 
5"
End Select
If StrPrinter <> "0" Then
' Apro il report in anteprima nascosta
DoCmd.OpenReport NomeRpt, acViewPreview, acHidden, (FiltroPiet)
Set Rpt = Reports(NomeRpt)
Rpt.Printer = Application.Printers(StrPrinter)
Rpt.Printer.LeftMargin = 0
Rpt.Printer.RightMargin = 0
Rpt.Printer.TopMargin = 0
Rpt.Printer.BottomMargin = 0
' Stampo il report
DoCmd.OpenReport (NomeRpt), acNormal
' Non salvo la stampante come stampante dell'applicazione.
DoCmd.Close acReport, NomeRpt, acSaveNo
Set Application.Printer = Nothing
 
    Else
    MsgBox "Stampante non configurata su " & NomeRpt & "La stampa non è 
stata eseguita"
End If
End Sub
 
codice Sql della query
 
SELECT DatiOrdini.IdOrdine, DatiOrdini.NumOrdine, 
DatiOrdini.DataOrdine, DatiOrdini.Ncoperti, DatiOrdini.NomeSc, 
DatiOrdini.IdTipoCliente, DatiOrdini.NoteOrdineCucina, 
DatiOrdini.NoteOrdinePizzeria, DatiOrdini.NumTavolo, 
Pietanze.NomePietanza, OrdiniDettaglio.NumPietanza, 
TipiPietanze.TipoPietanza, TipiPietanze.IdTipoPietanza, 
Pietanze.IdPietanza, DatiOrdini.OraOrdine, 
TipiPietanze.OrdinamentoCucina, DatiOrdini.ImportoPagato, 
DatiOrdini.ComandaStampata, Operatori.NomeOperatore
FROM Operatori INNER JOIN ((TipiPietanze INNER JOIN Pietanze ON 
TipiPietanze.IdTipoPietanza = Pietanze.IdTipoPietanza) INNER JOIN 
(DatiOrdini INNER JOIN OrdiniDettaglio ON DatiOrdini.IdOrdine = 
OrdiniDettaglio.IdOrdine) ON Pietanze.IdPietanza = 
OrdiniDettaglio.IdPietanza) ON Operatori.IdOperatore = 
DatiOrdini.IdOperatore
ORDER BY Pietanze.NomePietanza, TipiPietanze.OrdinamentoCucina;
 
Cosa sbaglio ?
Maurizio

 IdTipoPietanza
 
 
forse perchè nella select scrivi IdTipoPetanza invece di IdTipoPietanza
 
BFS
 

Dopo dura riflessione, BFS ha scritto :

Mi scuso per la baggianata
Grazie per la soluzione e anche per la dura riflessione
Grazie  ancora
Ciao
Maurizio

 Grazie per la soluzione e anche per la dura riflessione
;-)
-- 
ac (x=y-1)
Aborro il Killfile
(La violenza e' l'ultimo rifugio degli incapaci -Salvor Hardin-)
 
---
Questa e-mail è stata controllata per individuare virus con Avast antivirus.
http://www.avast.com
 
 

 ;-)
 
comunque è anche bello fare qualche baggianata(spero poche) quando vedi 
che hai poi delle persone che ti aiutano solo per il gusto di aiutare
GRAZIE a tutti voi.....
di cuore
Ciao a tutti
Maurizio


A me e' semplicemente piaciuta la tua risposta ed in genere io ;-) 
sempre :-))))))))))))))))))))))))))))))))


Il 19/01/2015 22:51, maurizio1 ha scritto:

tranquillo è il classico errore che non vedi pur passando il codice 
mille volte...perchè l'occhio non legge e il cervello da per scontato 
che sia scritto IDtipoPIetanza
un occhio esterno invece vede subito l'errore
 
ciao
BFS