ciao Maistor
vedi sul database la tabella "zz_gruppi_modules" tramite questa tabella puoi gestire delle clausole aggiuntive che permettono di impostare i filtri come da te richiesto.
Come prima cosa assicurati di creare una scheda dell'agente tra le anagrafiche, logicamente con il tipo di anagrafica "agente" e di collegare quindi username-password a questa scheda agente.
Ti faccio un esempio banale di utilizzo della tabella zz_gruppi_modules:
di default per caricare la lista dei clienti utilizzo una query del tipo: "SELECT * FROM an_anagrafiche WHERE 1=1" che mostra tutte le anagrafiche.
Se mi loggo con un utente del gruppo "Agenti" viene aggiunta la clausola aggiuntiva presente nella tabella "zz_gruppi_modules", infatti su questa tabella trovi id del modulo (nel quale applicare la clausola) e il codice id del gruppo utenti.
Quindi la query per il modulo Anagrafiche utilizzata dal gruppo Agenti diventa: "SELECT * FROM an_anagrafiche WHERE 1=1 AND idagente=|idagente|" (il valore tra pipe viene sostituito con il codice id dell'agente loggato)
Il procedimento non è semplicissimo, se non vuoi perderci troppo tempo chiamaci pure possiamo aiutarti anche con il pacchetto più piccolo di assistenza: https://www.openstamanager.com/per-le-aziende/
Per il discorso degli allegati la questione è più complicata, ma possiamo comunque intervenire anche su quella parte.