Pagina 1 di 1

Query di Aggiornamento posizione in base a una data

Inviato: mercoledì 13 giugno 2018, 11:34
da DjSP
Salve a tutti, (premesso che sono un principiante) , sto lavorando a un database,
composto da due tabelle, delle quali, una ha tutti i dipendenti, nome e cognome,qualifica ufficio, e 4 campi numerici dove imposto la posizione mettendo 0 o 1, l'altra tabella ha nome cognome, data un commento e anch'essa le 4 posizioni, (es. A B C D; S'è in posizione B sarà 0 1 0 0) dove A B .. sono Campi della tabella..
Siccome utilizzo quest'ultima tabella per, inserire le posizioni dei dipendenti, volevo sapere se c'è un modo per parificare le posizioni tra le due tabelle in base a una data, in ms access lo facevo con una query di aggiornamento dove chiedeva la data.. in openoffice non so proprio come impostare la query o la macro…. :crazy:

Re: Query di Aggiornamento posizione in base a una data

Inviato: mercoledì 13 giugno 2018, 13:38
da charlie
Ciao e benvenuto sul forum.
Se intanto ti vuoi presentare puoi farlo qui: viewforum.php?f=16
Per una panoramica delle regole del forum consulta il Manuale di sopravvivenza: http://forum.openoffice.org/it/forum/vi ... hp?f=1&t=2
Buon proseguimento.

L'utilizzo di due tabelle contenenti quasi gli stessi dati non è giustificato in un database né in Base né in Access. Prova a descrivere meglio le tue esigenze e se puoi allega un file di esempio.

Re: Query di Aggiornamento posizione in base a una data

Inviato: mercoledì 13 giugno 2018, 18:28
da DjSP
Buonasera, e grazie della risposta.
allego il database di esempio, delle due tabelle che utilizzo:
Nella prima tabella Personale, ci sono i record che riguardano i dipendenti, ovvero l'ubicazione le mansioni, e il nominativo ovviamente,e
alla fine le posizioni A B .....
la seconda tabella la uso per gestire le posizioni del nominativo (A B C...) in una determinata data, quello che mi serve è creare
una macro, con un comando sql che mi permetta di parificare le posizioni in una determinata data del nominato (campo "Cognome Nome") nella tabella Personale. Magrari anche se mi consigliate un approccio diverso, ve ne sarei grato. Grazie!

Re: Query di Aggiornamento posizione in base a una data

Inviato: giovedì 14 giugno 2018, 7:24
da charlie
Ciao, ho ristrutturato il database sperando di non aver capito male le tue esigenze.
  1. Semplificato la tabella Personale togliendo i campi A B C D
  2. Rifatta la tabella Gestione con un Intero al posto di Cognome Nome e con il campo Collocazione (ancora Intero) al posto dei campi A B C D
  3. Aggiunta la tabella Collocazioni
  4. Aggiunto il Formulario Gestione con caselle di riepilogo su Cognome Nome, Data e Collocazione
  5. Aggiunta la query Ricerca1 per la ricerca per data (va perfezionata con un Formulario appropriato)

Re: Query di Aggiornamento posizione in base a una data

Inviato: giovedì 14 giugno 2018, 8:28
da DjSP
Grazie per la dritta, ma ho un ultimo quesito, e se io volessi sapere, es. quanti dipendenti in una X data sono in A?

Re: Query di Aggiornamento posizione in base a una data

Inviato: giovedì 14 giugno 2018, 8:43
da charlie
Basta fare una query che corrisponde a questo codice SQL:

Codice: Seleziona tutto

SELECT "Gestione"."ID", "Personale"."Cognome Nome", "Gestione"."Data", "Collocazioni"."Collocazione" FROM "Personale", "Gestione", "Collocazioni" WHERE "Personale"."id_personale" = "Gestione"."CognomeNomeID" AND "Collocazioni"."ID" = "Gestione"."Collocazione" AND "Gestione"."Data" = :Data AND "Collocazioni"."Collocazione" = :Collocazione
Al lancio ti verrà chiesto di digitare Data e Collocazione.

Re: Query di Aggiornamento posizione in base a una data

Inviato: venerdì 15 giugno 2018, 9:00
da DjSP
Grazie, anche per questa pillola, ma il mio problema piu importante è
determinare il numerico del personale diviso ad esempio per ruolo, e il numerico del personale diviso per qualifiche, es. per il ruolo, il numerico del personale con il ruolo Dipendente in A. stessa cosa cosa per la qualidica e per l'uffico.
Dell' ufficio Segreteria il numerico del ruolo dipendenti in A. oppure dell'ufficio Direzione la qualifica Contabile in A.

Re: Query di Aggiornamento posizione in base a una data

Inviato: venerdì 15 giugno 2018, 13:31
da charlie
DjSP ha scritto:il numerico del personale
Non capisco cosa intendi.

Re: Query di Aggiornamento posizione in base a una data

Inviato: venerdì 15 giugno 2018, 13:38
da DjSP
Scusami mi spiego meglio mi deve saper il numero di dipendenti in A, ho provato con una Query
Ma se imposto il conteggio sul gruppo non funziona

Re: Query di Aggiornamento posizione in base a una data

Inviato: venerdì 15 giugno 2018, 14:18
da charlie
Sempre riferito ad una data?

Codice: Seleziona tutto

SELECT "Gestione"."Data", "Collocazioni"."Collocazione", COUNT( "Personale"."Cognome Nome" ) "Conteggio" FROM "Personale", "Gestione", "Collocazioni" WHERE "Personale"."id_personale" = "Gestione"."CognomeNomeID" AND "Collocazioni"."ID" = "Gestione"."Collocazione" GROUP BY "Gestione"."Data", "Collocazioni"."Collocazione" HAVING ( ( "Gestione"."Data" = :Data AND "Collocazioni"."Collocazione" = :Collocazione ) )

Re: Query di Aggiornamento posizione in base a una data

Inviato: venerdì 15 giugno 2018, 15:43
da DjSP
In questo caso no

Re: Query di Aggiornamento posizione in base a una data

Inviato: sabato 16 giugno 2018, 7:50
da charlie

Codice: Seleziona tutto

SELECT "Collocazioni"."Collocazione", COUNT( "Personale"."Cognome Nome" ) "Conteggio" FROM "Personale", "Gestione", "Collocazioni" WHERE "Personale"."id_personale" = "Gestione"."CognomeNomeID" AND "Collocazioni"."ID" = "Gestione"."Collocazione" GROUP BY "Collocazioni"."Collocazione"
oppure:

Codice: Seleziona tutto

SELECT "Collocazioni"."Collocazione", COUNT( "Personale"."Cognome Nome" ) "Conteggio" FROM "Personale", "Gestione", "Collocazioni" WHERE "Personale"."id_personale" = "Gestione"."CognomeNomeID" AND "Collocazioni"."ID" = "Gestione"."Collocazione" GROUP BY "Collocazioni"."Collocazione" HAVING ( ( "Collocazioni"."Collocazione" = :Collocazione ) )

Re: Query di Aggiornamento posizione in base a una data

Inviato: lunedì 18 giugno 2018, 14:01
da DjSP
Ma una query di aggiornamento in che ha come condizione una data da inserire come si fa?

Re: Query di Aggiornamento posizione in base a una data

Inviato: martedì 19 giugno 2018, 11:28
da DjSP
Buongiorno! Rifacendomi all esempio che ho publicato all inizio, la mia idea di query di aggiornamento era la seguente

Codice: Seleziona tutto

UPDATE "Personale" SET "A" =( SELECT "A" FROM "Gestione del personale") WHERE "Gestione del personale"."Data"= Now() 
La mia idea era quella di lanciare questo comando in una macro per potere aggiornare la posizione nella tabella
Dove sbaglio?
Grazie ancora

Re: Query di Aggiornamento posizione in base a una data

Inviato: giovedì 21 giugno 2018, 7:47
da charlie
Ciao, se lanci il comando SQL in modo diretto, il messaggio è chiaro: