Query di Aggiornamento posizione in base a una data

Discussioni sulle caratteristiche di database
Rispondi
DjSP
Messaggi: 9
Iscritto il: mercoledì 13 giugno 2018, 10:30

Query di Aggiornamento posizione in base a una data

Messaggio 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:
Openoffice 4.0 Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8786
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Query di Aggiornamento posizione in base a una data

Messaggio 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.
charlie
macOS 14.3 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
DjSP
Messaggi: 9
Iscritto il: mercoledì 13 giugno 2018, 10:30

Re: Query di Aggiornamento posizione in base a una data

Messaggio 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!
Allegati
DB_esempio.odb
(4.56 KiB) Scaricato 134 volte
Openoffice 4.0 Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8786
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Query di Aggiornamento posizione in base a una data

Messaggio 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)
Allegati
DB_esempio_2.odb
(13.52 KiB) Scaricato 147 volte
charlie
macOS 14.3 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
DjSP
Messaggi: 9
Iscritto il: mercoledì 13 giugno 2018, 10:30

Re: Query di Aggiornamento posizione in base a una data

Messaggio 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?
Openoffice 4.0 Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8786
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Query di Aggiornamento posizione in base a una data

Messaggio 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.
charlie
macOS 14.3 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
DjSP
Messaggi: 9
Iscritto il: mercoledì 13 giugno 2018, 10:30

Re: Query di Aggiornamento posizione in base a una data

Messaggio 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.
Openoffice 4.0 Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8786
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Query di Aggiornamento posizione in base a una data

Messaggio da charlie »

DjSP ha scritto:il numerico del personale
Non capisco cosa intendi.
charlie
macOS 14.3 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
DjSP
Messaggi: 9
Iscritto il: mercoledì 13 giugno 2018, 10:30

Re: Query di Aggiornamento posizione in base a una data

Messaggio 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
Openoffice 4.0 Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8786
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Query di Aggiornamento posizione in base a una data

Messaggio 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 ) )
charlie
macOS 14.3 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
DjSP
Messaggi: 9
Iscritto il: mercoledì 13 giugno 2018, 10:30

Re: Query di Aggiornamento posizione in base a una data

Messaggio da DjSP »

In questo caso no
Openoffice 4.0 Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8786
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Query di Aggiornamento posizione in base a una data

Messaggio 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 ) )
charlie
macOS 14.3 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
DjSP
Messaggi: 9
Iscritto il: mercoledì 13 giugno 2018, 10:30

Re: Query di Aggiornamento posizione in base a una data

Messaggio da DjSP »

Ma una query di aggiornamento in che ha come condizione una data da inserire come si fa?
Openoffice 4.0 Windows 7
DjSP
Messaggi: 9
Iscritto il: mercoledì 13 giugno 2018, 10:30

Re: Query di Aggiornamento posizione in base a una data

Messaggio 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
Openoffice 4.0 Windows 7
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8786
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Query di Aggiornamento posizione in base a una data

Messaggio da charlie »

Ciao, se lanci il comando SQL in modo diretto, il messaggio è chiaro:
Allegati
Schermata 2018-06-21 alle 07.45.30.png
charlie
macOS 14.3 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Rispondi