Query in base a User info

di il
7 risposte

Query in base a User info

Da tempo uso un database in locale. Con office 365 ho diviso il database con tabelle su sito SharePoint. A questo punto, alle tabelle esistenti, si aggiungono dei campi relativi alle "userinfo": ora creazione, autore, autore ultima modifica ecc. Nel campo [Autore] compare correttamente il nome account di chi inserisce il record.
Vorrei creare una query che filtri i risultati in base all'account di login in modo che chi si logga possa vedere solo i record che ha scritto. Ho provato ad inserire il criterio CurrentWebUser(1) ma mi restituisce 0 record ma forse è l'approccio sbagliato. Che dovrei fare?
Grazie

7 Risposte

  • Re: Query in base a User info

    Forse ti riferivi a questo:


    Ma credo tu abbia un po confuso... e quello che chiedi... probabilmente ha risvolti più complessi.
  • Re: Query in base a User info

    Il link che mi hai suggerito in effetti non parla di quello di cui avrei bisogno. Grazie comunque.
    Quello che intendevo è che access desktop rileva e scrive automaticamente il nome account di chi si logga (con l'account sharepoint) se le tabelle sono condivise appunto su di un sito sharepoint. E' quindi in grado di rilevare chi scrive e di registrarlo su un campo apposito.
    Mi chiedevo se fosse possibile filtrare questo campo non in base ad un parametro fisso [Autore]="Matteo" (altrimenti dovrei fare tante query quanti sono gli utenti) ma ad un parametro variabile [Autore]=CurrerntWebUser appunto...
  • Re: Query in base a User info

    Non capisco...

    Se, come affermi, Autore è l'utente che si logga (che viene correttamente registrato nel campo della tabella), cosa ti vieta di utilizzare la stessa informazione per aggiungere una condizione alla query:
    WHERE Autore = <utente_loggato>
    Personalmente preferisco usare la chiave primaria <IDUser> dell'utente.
  • Re: Query in base a User info

    Il problema è proprio questo.
    Il campo [Autore] si compila con un nome che corrisponde a quello che vedo in alto a destra nella schermata di access una volta che sono loggato. Quindi come dici tu sarebbe semplice, potrei mettere nella clausola WHERE il criterio di uguaglianza con il nome di login.
    Ma il comando qual'è? Proprio con questo intento ho inserito clausola WHERE = CurrentWebUser(1) o (2) ho provato entrambe le soluzioni, ma mi restituisce una query vuota quindi forse il criterio CurrentWebUser non è quello giusto. Idee su quale potrebbe essere?

    PS.
    Intanto faccio delle prove con <IDUser> e vedo cosa riesco a combinare...
  • Re: Query in base a User info

    Non capisco.
    Devi avere una finestra di login in cui l'utente immette le credenziali.
    Altrimenti come fai a gestire i permessi ed i livelli di accesso?
  • Re: Query in base a User info

    Scusa, ma nelle tabelle CHI scrive il nome dell'utente nel campo AUTORE?
  • Re: Query in base a User info

    Se le tabelle risiedono su un sito di SharePoint, per accedere al contenuto viene chiesto un login con le credenziali di accesso ai servizi office365. Il nome utente associato al login viene riportato nel campo [Autore] che il sistema genera automaticamente in ogni tabella al momento in cui si divide il database in tabelle (su SharePoint) e struttura (su pc).
Devi accedere o registrarti per scrivere nel forum
7 risposte