Code:
Private Sub Form_Timer() Me.TimerInterval = 0
Me.CandidatiFIltTB.SetFocus
Me.Filter = "[cognome] LIKE ""*" & Me.CandidatiFIltTB.Text & "*"" "
Me.FilterOn = True
If Me.RecordsetClone.RecordCount = 0 Then
sql = "SELECT Candidati.idcandidato,Candidati.Nome,Candidati.Cognome,Candidati.nome & "" "" & Candidati.cognome as NomeCognome, IIf([posizionelavorativa] And [azienda]<>"""",[posizionelavorativa] & "" in "" & [azienda],"""") AS DatiProfessionali,Candidati.cellulare, Candidati.tag, Comuni.Comune, Comuni.Provincia, Comuni.Regione, Professioni.PosizioneLavorativa, Professioni.Tipodicontratto, Professioni.Settore, Aziende.Azienda, Candidati.[ptf banca personale], Candidati.[ptf trasferibile personale], Candidati.[ptf trasferibile gruppo], Candidati.[RAL/Fatturato], Candidati.[Corrispettivo patto], Candidati.[Penale economica], Candidati.[origine head hunter], Candidati.manager " & vbCrLf & _
"FROM Professioni RIGHT JOIN (Aziende RIGHT JOIN (Comuni RIGHT JOIN Candidati ON Comuni.IDComune = Candidati.ComuneID) ON Aziende.IDazienda = Candidati.AziendaID) ON Professioni.IDposizione = Candidati.PosizioneID " & vbCrLf & _
"ORDER BY Candidati.Cognome, candidati.Nome;"
CurrentDb.QueryDefs("qrylistacandidati").sql = sql
End If
Me.CandidatiFIltTB.SetFocus 'serve a portare il cursore dopo l'ultima lettera presente nella textbox
Me.CandidatiFIltTB.SelStart = Nz(Len(Me.CandidatiFIltTB), 0)
Me.CandidatiFIltTB.SelLength = Nz(Len(Me.CandidatiFIltTB), 0)
If Me.RecordsetClone.RecordCount = 1 Then
sql = "SELECT Candidati.IDcandidato,candidati.Nome,candidati.Cognome, Candidati.nome & "" "" & Candidati.cognome as NomeCognome,Candidati.Cellulare, Candidati.[Telefono fisso], Candidati.[Email personale], Candidati.[Email ufficio], Candidati.[Data di nascita], Comuni.Comune, Comuni.Provincia, Comuni.Regione, Comuni.Zona, Aziende.Azienda, Professioni.PosizioneLavorativa, Professioni.Tipodicontratto, Professioni.Settore, Candidati.[Ptf banca personale], Candidati.[Ptf banca gruppo], Candidati.[Ptf trasferibile personale], Candidati.[Ptf trasferibile gruppo], Candidati.[Numero clienti banca], Candidati.[Numero clienti personali], Candidati.[Numero clienti gruppo], Candidati.[Note portafoglio], Candidati.[Ptf gestito], " & vbCrLf & _
"Candidati.[Ptf assicurativo], Candidati.[Ptf amministrato], Candidati.Liquidità, Candidati.[Redditività ptf trasferibile], Candidati.[Scadenza patto], Candidati.[Penale economica], Candidati.[Patto di non concorrenza], Candidati.[Ultimo cambio azienda], Candidati.Livello, Candidati.[RAL/Fatturato], Candidati.Premi, Candidati.[Corrispettivo patto], Candidati.Iscrizione, Candidati.[Iscrizione albo], Candidati.Zone, Candidati.Formazione, Candidati.[Contratto del credito], Candidati.[Contratto di agenzia], Candidati.Descrizione, Candidati.[Gestito da], Candidati.[Origine head hunter], Candidati.Indirizzo, Candidati.Valutazione, Candidati.Relazione, " & vbCrLf & _
"Candidati.Manager, Candidati.Benefit, Candidati.Foto, Candidati.Linkedin, Candidati.titoloC, Candidati.Tag, Candidati.[Data/ora modifica], Candidati.DataModificaNum, Candidati.[Data/ora creazione], Candidati.DataCreazioneNum, Candidati.ModificatoDa, Candidati.RN, Candidati.TipoContatto " & vbCrLf & _
"FROM Aziende RIGHT JOIN (Professioni RIGHT JOIN (Comuni RIGHT JOIN Candidati ON Comuni.IDComune = Candidati.ComuneID) ON Professioni.IDposizione = Candidati.PosizioneID) ON Aziende.IDazienda = Candidati.AziendaID " & vbCrLf & _
"WHERE (((Candidati.IDcandidato)= " & Me.IDcandidato & "));"
CurrentDb.QueryDefs("qrycandidatodettaglio").sql = sql
Forms!contatti!Candidati.Form.RecordSource = "qrycandidatodettaglio"
End If
End Sub