Visualizzazione dei risultati da 1 a 10 su 10

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di Misterxxx
    Registrato dal
    Oct 2003
    Messaggi
    3,706
    Ipotizzando che la tua combo box (es chiamata Operai) visualizzi nome e mansione, la origine riga sarà simile a:
    codice:
    SELECT Operai.nome, Operai.mansione FROM Operai;
    ipotizzando che la casella di riepilogo (es chiamata: CasellaRiepilogo) contenga il criterio, il bottone dovrebbe impostare l'orgine riga nell'evento "su click":
    codice:
    Me.Operai.RowSource = "SELECT Operai.nome, Operai.mansione FROM Operai WHERE Operai.mansione='" & Me.CasellaRiepilogo & '";
    questo è un modo, oppure se la maschera è basata sulla tabella puoi applicare direttamente il filtro:
    codice:
    docmd.ApplyFilter , "Operai.mansione='" & Me.CasellaRiepilogo & '""
    scritto al volo, può esserci qualche syntiax ma rende l'idea
    Io ne ho viste cose che voi umani non potreste immaginare. Navi da combattimento in fiamme al largo dei bastioni di Orione e ho visto i raggi B, balenare nel buio vicino le porte di Tannhäuser. E tutti quei momenti ... andranno ... perduti nel tempo, come lacrime nella pioggia. È tempo di morire. (Roy Batty).

  2. #2
    Quote Originariamente inviata da Misterxxx Visualizza il messaggio
    Ipotizzando che la tua combo box (es chiamata Operai) visualizzi nome e mansione, la origine riga sarà simile a:
    codice:
    SELECT Operai.nome, Operai.mansione FROM Operai;
    ipotizzando che la casella di riepilogo (es chiamata: CasellaRiepilogo) contenga il criterio, il bottone dovrebbe impostare l'orgine riga nell'evento "su click":
    codice:
    Me.Operai.RowSource = "SELECT Operai.nome, Operai.mansione FROM Operai WHERE Operai.mansione='" & Me.CasellaRiepilogo & '";
    questo è un modo, oppure se la maschera è basata sulla tabella puoi applicare direttamente il filtro:
    codice:
    docmd.ApplyFilter , "Operai.mansione='" & Me.CasellaRiepilogo & '""
    scritto al volo, può esserci qualche syntiax ma rende l'idea
    Grazie Misterxxx, ho provato entrambe le soluzioni che hai postato, però per entrambe mi da una casella con i messaggi "Errore di compilazione" "Errore di sintassi" aprendomi la pagina del codice.
    Ho verificato che i nomi assegnati alla combo box ed alla casella di riepilogo siano corretti (mi pare che lo siano) ma non riesco a capire quale possa essere il problema purtroppo...

  3. #3
    Utente di HTML.it L'avatar di Misterxxx
    Registrato dal
    Oct 2003
    Messaggi
    3,706
    posta un po' di informazioni e cosa hai scritto
    Io ne ho viste cose che voi umani non potreste immaginare. Navi da combattimento in fiamme al largo dei bastioni di Orione e ho visto i raggi B, balenare nel buio vicino le porte di Tannhäuser. E tutti quei momenti ... andranno ... perduti nel tempo, come lacrime nella pioggia. È tempo di morire. (Roy Batty).

  4. #4
    Buongiorno Misterxxx,
    ti spiego brevemente come ho impostato la cosa.
    Utilizzando l'autocomposizione ho creato una maschera che mi consente di popolare la tabella che ho impostato come illustrato nel post di apertura della discussione.
    Sempre nella maschera iniziale ho messo un tasto che apre una maschera (denominata "Maschera2") dove ho messo una casella di riepilogo che va a prendere i dati dalla tabella. Anche in questo caso ho utilizzato l'autocomposizione perchè facesse questo in automatico.
    Il mio obiettivo finale è quello di poter fare un filtro sulla tabella su più campi. Ad esempio filtrare i record per "Operaio/Impiegato" e relativamente a chi ha fatto il corso "Appontaggio elicotteri", selezionando quindi "Operaio" e "SI" (relativamente al corso Appontaggio elicotteri), vorrei che spingendo un apposito tasto nella casella di riepilogo potessero venire fuori tutti i record contenenti "gli operai che hanno il corso di appontaggio elicotteri" nel caso in cui ci fosse qualcuno con queste caratteristiche.
    Nella mia mente vorrei quindi creare una serie di combobox relative a tutti i campi della tabella per i quali voglio effettuare un filtro e poi premendo un tasto si potesse aggiornare la casella di riepilogo con i record che hanno le caratteristiche selezionate. Ovviamente se in una combobox non viene selezionata alcuna scelta s'intende che vengano presi tutti i valori. Quindi la ricerca possa avvenire in maniera semplice, ad esempio cercando solo gli operai, oppure in maniera complessa cercando gli operai, che hanno effettuato il corso appontaggio elicotteri ed il corso BOSIET.
    Ovviamente la prima domanda che faccio è se è possibile fare la cosa che chiedo, così come l'ho descritta io. Perchè la maschera per questa funzione dev'essere anche molto semplice da usare e, prima di tutto, anche relativamente semplice da impostare per il sottoscritto.. infatti sono qui a chiedere cortesemente una mano.

    Non so se sono riuscito a spiegarmi in merito a cosa debba saltare fuori. Il fine di creare tutto questo in Access è che si possa in pochi click popolare una tabella di tutti i dipendenti dell'azienda ed in base all'occorrenza cercare/visualizzare il dipendente più idoneo (anche più di uno) per un determinato lavoro.

    Ovviamente ho cercato di iniziare per gradi chiedendo come fare a filtrare solamente per una caratteristica e poi avrei cercato di capire se fosse possibile, con lo stesso principio, applicare la cosa per una ricerca filtrando più campi contemporaneamente.

    Di seguito ti posto cosa ho fatto.
    Aprendo la "Maschera2" nella casella di riepilogo, denominata "Riep", si vedono inizialmente tutti i record memorizzati nella tabella (li ho inseriti utilizzando l'autocomposizione che li va a prendere dalla tabella).
    Ho creato una casella combinata, chiamandola "Mansione", dove viene mostrata la scelta "Operaio" o "Impiegato" per poter filtrare i record della tabella (nel campo apposito) per questa caratteristica. Ho poi creato un pulsante di comando, chiamandolo "Filtro" dove nell'evento su clic ho inserito questo
    codice:
    docmd.ApplyFilter , "Riep.Mansione='" & Me.Mansione & '""

    Ho salvato, avviato la Maschera2 e premuto il pulsante "Filtro" ed appare un messaggio di errore che dice "Errore di compilazione" "Errore di sintassi", aprendomi la pagina del codice.

    Mentre in base all'altro esempio che mi avevi lasciato, nel pulsante "Filtro" ho cancellato il codice che avevo prima e nell'evento su clic ho provato con il seguente
    codice:
    Me.Riep.RowSource = "SELECT Riep.ID, Riep.Nome, Riep.Cognome, Riep.Mansione, Riep.Bosiet, Riep.Appontaggio elicotteri FROM Riep WHERE Riep.Mansione='" & Me.Mansione '";
    Questa volta non da nessun errore, però una volta premuto il pulsante mi svuota la casella riepilogo Riep lasciandola vuota. Nel senso che non è presente più alcun record, ovviamente nella tabella che ho popolato sò che ce ne sono sia di record con "Operaio" sia di record con "Impiegato".

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.