Filtro per record sottomaschera

  • Creatore Discussione Creatore Discussione ghost24
  • Data di inizio Data di inizio

ghost24

Nuovo Utente
13 Dic 2014
5
0
0
Ho una sottomaschera che mi mostra dei risultati collegati a un'altra sottomaschera.
Il tutto dentro alla maschera principale.

Il problema deriva dal fatto che ci sono dei doppioni e vorrei sapere come posso eliminarli.

b5fade.png


2009ymq.png


2h6t478.png


Come si vede dalle foto quella è la sottomaschera e quelli sono i doppioni che si vedono.

Allego anche il DB per quanti volessero darmi una mano.
 
fresa diam 63 riccio (ripetuto tante volte) nella seconda casella si vede il num 3 ripetuto.

bareno diam 16H7 (ripetuto 2 volte) nella seconda casella c'è il numero 14 ripetuto

doppioni in quel senso. Vorrei che ne apparisse uno solo per tipo.
 
Provo a scaricare il db e mi risponde:
The file you are trying to access does not exist. This might be because the URL you accessed was changed accidentally. For example, a correctly formatted download link should look like:
http://www.datafilehost.com/d/a1b2b3c4
Any odd characters in your URL might be causing the error you are experiencing.



A quick solution is a shortcut to troubleshooting
HolidaySoft.it - Gestionali, Database, SitiWeb
GarganoSapori.it - Olio ExtraVergine del Gargano
OsteriaORistorante.it - Crea la Vetrina per il tuo Ristorante!
 
Ciao,
non conosco bene il tema del db, ma da quello che deduco:
la query utilizzata per estrarre i valori da te indicato è la seguente:
Codice:
SELECT collegamento.IDprogramma, utensili.[nome ut], utensili.descrizioneut, collegamento.posto, utensili.indice, collegamento.[nome utensile], collegamento.indice, collegamento.[descrizione utensile]
FROM programmi INNER JOIN (collegamento LEFT JOIN utensili ON collegamento.posto = utensili.posto) ON programmi.IDprogramma = collegamento.IDprogramma
WHERE ( ((collegamento.posto) In (SELECT [posto] FROM [utensili] As Tmp GROUP BY [posto] HAVING Count(*)>1 )) AND ((utensili.indice)>99))
ORDER BY collegamento.posto;

che tradotta ai minimi termini è:
Codice:
SELECT * FROM PROGRAMMI A, UTENSILI B, COLLEGAMENTO C
WHERE A.IDPROGRAMMA=C.IDPROGRAMMA AND B.POSTO=C.POSTO

e quindi ciò che determina la doppia visualizzazione è la tabella UTENSILI dove per esempio per il POSTO 14 vengono fuori due record:

Codice:
IDprogramma	nome ut	descrizioneut	posto	utensili.indice	nome utensile	collegamento.indice	descrizione utensile
13	T153	Fresa D 12 r.t.  Cono corto	14	153	T14	14	bareno diam.16H7
13	T163	Punta grad. 11/18	14	163	T14	14	bareno diam.16H7

quindi ciò che unisce le tabelle COLLEGAMENTO E UTENSILI è il campo POSTO. E' corretto? Oppure bisognava utilizzare un altro campo per collegare le due tabelle, es: NOME UTENSILE??

Ripeto, non conosco le logiche pratiche del tuo db, ma tecnicamente fa quello che ho indicato su


A quick solution is a shortcut to troubleshooting
HolidaySoft.it - Gestionali, Database, SitiWeb
GarganoSapori.it - Olio ExtraVergine del Gargano
OsteriaORistorante.it - Crea la Vetrina per il tuo Ristorante!
 
Se guardi bene la sottomaschera vedi che è relativa all'altra sottomaschera presente nella maschera principale "prog".

Praticamente nella sottomaschera a sinistra compare una lista di utensili con nome utensile e posto. Nella seconda sottomaschera (quella con i doppioni) mi dovrebbe comparire solo un utensile che ha il posto in comune con uno di quelli indicati nella sottomaschera di sinistra.

Esempio........ come vedi il posto 3 ha in comune 3 utensili T160 T165 e T167. Di sicuro nella prima sottomaschera compare solo uno di questi 3 che utilizza sempre il posto 3. Praticamente un "posto" può essere occupato da più utensili. Se l'utensile principale "T3" non viene usato, non mi interessa di visualizzare che nel posto 3 ci sono 3 utensili diversi, mi serve solo sapere quale serve in quel momento al posto del T3..... ad esempio....... T160 con posto 3.

Non sò se mi sono spiegato. La maschera prog è praticamente relativa a un pezzo che devo lavorare sulla macchina. La macchina che uso ha un numero di posti utensile limitato. Quindi quando finiscono i posti cominciano i doppioni. Per ogni pezzo che lavoro servono uun certo numero di utensili. Teoricamente potrei lavorare 7 pezzi su quella macchina ma in pratica non posso. Se 2 pezzi usano lo stesso posto utensile con 2 utensili diversi non posso procedere. E' per quello che mi serve di sapere per un determinato pezzo che utensile è doppio e non la quantita di doppi che ci sono per ogni posto. Non sò se mi sono spiegato............. intanto ti ringrazio per l'aiuto.
 

Discussioni simili