Database inserimento clienti
Database inserimento clienti
Buongiorno, è la prima volta che mi cimento in un lavoro del genere, vi chiedo quindi scusa in anticipo per tutti gli errori che commetto
Vengo subito al dunque: sto creando un database per l'acquisizione di nuovi clienti, la mia idea è quella di creare 3 diverse tabelle e relazionare la voce "Azienda" con i vari servizi (presenti nell'apposita tabella) e le date di acquisizione e di fine rapporti (presenti in un altra tabella).
Ho poi creato la maschera, però qui ho avuto i primi problemi...
Ho impostato in modo che le date non debbano essere scritte ma visualizzando un calendario... Non riesco a capire il perché ma la freccia verso il basso mi appare, però se ci clicco non esce il calendario...
Inoltre, sempre nella maschera, ho impostato la voce ID come "combo box" (per poter visualizzare tutti i servizi senza dover scrivere a mano) anche in questo caso se clicco sulla casella corrispondente non esce nulla...
Dove e cosa ho sbagliato?
Vengo subito al dunque: sto creando un database per l'acquisizione di nuovi clienti, la mia idea è quella di creare 3 diverse tabelle e relazionare la voce "Azienda" con i vari servizi (presenti nell'apposita tabella) e le date di acquisizione e di fine rapporti (presenti in un altra tabella).
Ho poi creato la maschera, però qui ho avuto i primi problemi...
Ho impostato in modo che le date non debbano essere scritte ma visualizzando un calendario... Non riesco a capire il perché ma la freccia verso il basso mi appare, però se ci clicco non esce il calendario...
Inoltre, sempre nella maschera, ho impostato la voce ID come "combo box" (per poter visualizzare tutti i servizi senza dover scrivere a mano) anche in questo caso se clicco sulla casella corrispondente non esce nulla...
Dove e cosa ho sbagliato?
- Allegati
-
- Soa&Imprese.odb
- (14.81 KiB) Scaricato 170 volte
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
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.
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.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Ciao, devi rivedere il concetto di relazione.
- Hai messo in relazione un campo tipo testo (Clienti.Azienda) con 2 campi tipo data (Datazione.Data Acquisizione e Datazione.Data fine Rapporto). Non potrà mai funzionare, un nome azienda uguale ad una data?.
- Hai messo in relazione un campo tipo testo (Clienti.Azienda) di una tabella con 10 campi tipo testo di un'altra (Servizi.Ricerca Gara, ...). Significa che la relazione funzionerà quanto tutti i record degli 11 campi saranno uguali. Non credo sia questo che volevi.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Dovrei quindi rivedere le relazioni? dato che ogni azienda avrà una data di fine rapporti, pensavo di metterle in relazione in questo modo... ho sbagliato dall'inizio allora
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Ci siamo incrociati, guarda su.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Ho modificato le relazioni, come mi hai consigliato ma, continuo a non poter selezionare le 3 caselle...
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Il formulario lavora sulla query e serve per scrivere i dati (le date) sulle tabelle che compongono la query. Condizione necessaria perché ciò avvenga è che nella query siano presenti tutti gli ID delle tabelle (non occorre che ci siano nel formulario).nemo93 ha scritto:Ho impostato in modo che le date non debbano essere scritte ma visualizzando un calendario... Non riesco a capire il perché ma la freccia verso il basso mi appare, però se ci clicco non esce il calendario...
Hai impostato gli ID delle tabelle con Valore automatico= Sì (autoincremento), pertanto non è possible scriverci su.nemo93 ha scritto:Inoltre, sempre nella maschera, ho impostato la voce ID come "combo box" ....
Ed inoltre, per la ricerca attraverso Listbox (no Combobox), ti devi avvalere di una tabella Filtro esterna che punti al campo della query da ricercare.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Stavo pensando... Se riducessi a 2 le tabelle, la tabella "clienti" (contenente "data acquisizione" e "data fine rapporto") e la tabella "Servizi", e mettessi in relazione gli ID? (impostando sempre gli id come chiave primaria ma non con incremento automatico) alleggerirei un pò il carico, giusto?
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Non mi è chiaro a cosa ti serve la tabella Servizi, anche perché non hai ancora inserito dati.
Ma io farei anche una tabella unica Clienti, con l'aggiunta delle date e tanti campi tipo booleano per i sevizi relativi a ciascun cliente.
Ma io farei anche una tabella unica Clienti, con l'aggiunta delle date e tanti campi tipo booleano per i sevizi relativi a ciascun cliente.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Potrei rendere l'anagrafica "Clienti" la tabella madre, e relazionarla con la tabella "Servizi" e "Anagrafica azienda" (relazionate anche loro).
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Da quello schema relazioni non si capisce con quali campi sono fatte.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Hai ragione, cosa, comunque con le chiavi secondarie “id_anagrafica clienti” (presente in “anagrafica azienda” e “id_anagrafica azienda” presente in servizi, relazionati con gli ID di partenza delle tabelle
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Ho difficoltà a seguirti, posta per favore il database modificato con qualche dato inserito (fittizio).
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Eccolo, ripeto è la prima volta che mi cimento in un lavoro del genere, sono veramente un dilettante allo sbaraglio, tu ringrazio per la pazienza e i consigli che mi stai dando
- Allegati
-
- SOA&Imprese.odb
- (14.11 KiB) Scaricato 107 volte
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
- charlie ha scritto:Il formulario lavora sulla query e serve per scrivere i dati (le date) sulle tabelle che compongono la query. Condizione necessaria perché ciò avvenga è che nella query siano presenti tutti gli ID delle tabelle (non occorre che ci siano nel formulario).
Ti sei ripetuto, mi sembra.charlie ha scritto:Hai impostato gli ID delle tabelle con Valore automatico= Sì (autoincremento), pertanto non è possible scriverci su.- Volevo dei dati anche nella tabella Servizi, per vedere come la usi, poi posso darti consigli ulteriori.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
In servizi non vanno inseriti dati, mi serve solo sapere che la determinata azienda ha scelto quel servizio (uno o più)
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Ancora una cosa, in che rapporto sono le aziende con i clienti? In altre parole: i clienti sono il "contatto" di ogni azienda? O abbiamo più aziende con più clienti? Non si capisce ....
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Il cliente è il riferimento dell’azienda
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Io lo farei così.
N.B. Le date sono apribili con menu a tendina.
N.B. Le date sono apribili con menu a tendina.
- Allegati
-
- SOAImprese_2.odb
- (13.72 KiB) Scaricato 122 volte
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Eccomi, ti ringrazio per l'aiuto,
Ora ho un ultimo dubbio, devo impostare una query che mi avvisi a un determinato numero di giorni dalla scadenza di alcuni servizi. quindi dovrei usare il parametro =DATA.DIFF(""), ho provato a scrivere una cosa del genere: =DATA.DIFF("-90"; "Data_Fine_Rapporto"; "d)" per avere un allerta a 90 giorni dal termine. Penso di scrivere le regole sotto ogni determinato servizio del quale necessito di essere avvisato a 90gg dal termine ma, quando tento di rendere attiva la regola ricevo il seguente messaggio:
"il criterio inserito non può essere confrontato con questo campo".
Ora non riesco a capire se ho sbagliato io nella sintassi o cosa possa aver sbagliato
Ora ho un ultimo dubbio, devo impostare una query che mi avvisi a un determinato numero di giorni dalla scadenza di alcuni servizi. quindi dovrei usare il parametro =DATA.DIFF(""), ho provato a scrivere una cosa del genere: =DATA.DIFF("-90"; "Data_Fine_Rapporto"; "d)" per avere un allerta a 90 giorni dal termine. Penso di scrivere le regole sotto ogni determinato servizio del quale necessito di essere avvisato a 90gg dal termine ma, quando tento di rendere attiva la regola ricevo il seguente messaggio:
"il criterio inserito non può essere confrontato con questo campo".
Ora non riesco a capire se ho sbagliato io nella sintassi o cosa possa aver sbagliato
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
La corretta sintassi della funzione è questa:
dd deve rimanere così (significa giorni)
data è il tuo campo data
NOW () è la data odierna o, meglio, quella del giorno in ciu viene calcolato il confronto
90 è il valore in giorni che deve soddisfare la funzione.
Codice: Seleziona tutto
DATEDIFF('dd',data, NOW ())<= 90
data è il tuo campo data
NOW () è la data odierna o, meglio, quella del giorno in ciu viene calcolato il confronto
90 è il valore in giorni che deve soddisfare la funzione.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Correggendo la sintassi come mi hai indicato continuo a ricevere il messaggio che dicevo prima
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Da quel po' che vedo, (preferirei vedere il codice SQL o avere il file al posto dell'immagine):
- al posto di 'data' devi usare il tuo nome campo
- la sintassi va completata usando un'opportuna espressione CASE WHEN
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Sia che scrivo: =DATE.DIFF('dd',Ricerca_Gara, NOW ())<= 90 o =DATE.DIFF('dd',Data_Fine_Rapporto, NOW ())<= 90, ricevo il messaggio:
"il criterio inserito non può essere confrontato con questo campo". il codice SQL non me lo fa visualizzare con la funzione inserita, senza criterio è questo:
"il criterio inserito non può essere confrontato con questo campo". il codice SQL non me lo fa visualizzare con la funzione inserita, senza criterio è questo:
Ci sono alcuni servizi che hanno una determinata scadenza, altri servizi non hanno scadenza, quindi nella query ho selezionato i 6 servizi che hanno scadenza, in più i vari dati di riferimento (nome, cognome, nome azienda cell e data scadenza), io penso (però potrei sbagliare), che la funzione vada inserita alla voce: "criterio" sotto il servizio di cui necessito essere avvisato a 90 giorni dal termine. Avviando la query vedrò solo i clienti che hanno scelto quel tipo di servizio che sono in scadenza di contrattoSELECT "Anagrafica Cliente"."Nome", "Anagrafica Cliente"."Cognome", "Anagrafica Cliente"."Cell", "Anagrafica Cliente"."Email", "Anagrafica Azienda"."Nome Azienda", "Anagrafica Azienda"."Data Fine Rapporto", "Anagrafica Azienda"."Ricerca Gara", "Anagrafica Azienda"."Attestazione SOA", "Anagrafica Azienda"."Polizze/Assicurazioni", "Anagrafica Azienda"."Albofornitori", "Anagrafica Azienda"."Certificazioni ISO", "Anagrafica Azienda"."Consorzio", "Anagrafica Azienda"."Note" FROM "Anagrafica Azienda", "Anagrafica Cliente" WHERE "Anagrafica Azienda"."ID_Cliente" = "Anagrafica Cliente"."ID".
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Da come è stato impostato il database i servizi ci sono o non ci sono, non sono collegati con nessuna data.nemo93 ha scritto:Ci sono alcuni servizi che hanno una determinata scadenza, altri servizi non hanno scadenza, quindi nella query ho selezionato i 6 servizi che hanno scadenza
Comunque una query funzionante per vedere le aziende con Data Fine Rapporto in scadenza (<= 90 gg.) potrebbe essere questa:
Codice: Seleziona tutto
SELECT "Anagrafica Azienda"."Nome Azienda", "Anagrafica Azienda"."Data Acquisizione", "Anagrafica Azienda"."Data Fine Rapporto", "Anagrafica Azienda"."Ricerca Gara", "Anagrafica Azienda"."Attestazione SOA", "Anagrafica Azienda"."Avvallamenti", "Anagrafica Azienda"."Subappalto", "Anagrafica Azienda"."Polizze/Assicurazioni", "Anagrafica Azienda"."Ricorsi", "Anagrafica Azienda"."Albofornitori", "Anagrafica Azienda"."RTI-RPT", "Anagrafica Azienda"."Certificazioni ISO", "Anagrafica Azienda"."Consorzio", "Anagrafica Cliente"."Nome", "Anagrafica Cliente"."Cognome", "Anagrafica Cliente"."Codice Fiscale", DATEDIFF( 'dd', NOW( ), "Data Fine Rapporto" ) AS "Scadenza < 90 gg." FROM "Anagrafica Azienda", "Anagrafica Cliente" WHERE "Anagrafica Azienda"."ID_Cliente" = "Anagrafica Cliente"."ID" AND DATEDIFF( 'dd', NOW( ), "Data Fine Rapporto" ) <= 90
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Scade il periodo di un determinato servizio, questo è il senso del DB che sto creando, comunque ho provato a impostare così:
Questo perché ho 5 servizi che vanno rinnovati entro 90gg dalla scadenza del contratto (il contratto dura circa 3 anni, quindi ho bisogno di avvisare la determinata azienda a 90gg dal termine di rinnovare il contratto).
Codice: Seleziona tutto
SELECT "Anagrafica Cliente"."Nome", "Anagrafica Cliente"."Cognome", "Anagrafica Cliente"."Cell", "Anagrafica Cliente"."Email", "Anagrafica Azienda"."Nome Azienda", "Anagrafica Azienda"."Data Fine Rapporto", "Anagrafica Azienda"."Attestazione SOA", "Anagrafica Azienda"."Polizze/Assicurazioni", "Anagrafica Azienda"."Albofornitori", "Anagrafica Azienda"."Certificazioni ISO", "Anagrafica Azienda"."Consorzio", "Anagrafica Azienda"."Note", DATEDIFF( 'dd', NOW( ), "Data Fine Rapporto" ) AS "Scadenza < 90 gg." FROM "Anagrafica Azienda", "Anagrafica Cliente" WHERE "Anagrafica Azienda"."ID_Cliente" = "Anagrafica Cliente"."ID" AND DATEDIFF( 'dd', NOW( ), "Data Fine Rapporto" ) <= 90
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Alla fine ho impostato tutto così, sembrerebbe funzionare bene, cosa ne pensi? Le query andrebbero impostate per le due scadenze.
Chiaramente se secondo te andrebbe modificato qualcosa dimmi tutto
Chiaramente se secondo te andrebbe modificato qualcosa dimmi tutto
- Allegati
-
- SOAImprese_2.odb
- (74.79 KiB) Scaricato 106 volte
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Temevo ci fossero date di scadenza differenziate.nemo93 ha scritto:Questo perché ho 5 servizi che vanno rinnovati entro 90gg dalla scadenza del contratto (il contratto dura circa 3 anni, quindi ho bisogno di avvisare la determinata azienda a 90gg dal termine di rinnovare il contratto).
Mi sembra tu sia sulla strada giusta .
Ma, per favore:
- Cambia l'indice sul nome file quando posti un nuovo esempio
- Posta esempi di database popolati con qualche dato
- Non cambiare i nomi campo e (nel tuo interesse) usa nomi campo brevi e di una sola parola o più parole unite dal segno "_". Ti eviterà tanti fastidi nel lavoro.
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Database inserimento clienti
Buongiorno,
Riscontro un problema con le query... Malgrado siano impostate (credo correttamente) quando ci vado a cliccare, con i dati inseriti (dove sono stati selezionati vari servizi presenti nelle query) non visualizzo alcun contatto...
Altra domanda, quando vado ad aprire la maschera, mi fa vedere tutti i dati precedentemente inseriti, come posso impostarla affinché compaia la pagina pulita pronta per mettere nuovi dati?
Riscontro un problema con le query... Malgrado siano impostate (credo correttamente) quando ci vado a cliccare, con i dati inseriti (dove sono stati selezionati vari servizi presenti nelle query) non visualizzo alcun contatto...
Altra domanda, quando vado ad aprire la maschera, mi fa vedere tutti i dati precedentemente inseriti, come posso impostarla affinché compaia la pagina pulita pronta per mettere nuovi dati?
- Allegati
-
- SOA&Impresa 2.odb
- (108.79 KiB) Scaricato 128 volte
Debian 9: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
MacOS X Hight Sierra: LibreOffice 6
Re: Database inserimento clienti
Perché con le date impostate nessuna scadenza è inferiore a 60 o 90 o 180 gg.nemo93 ha scritto:Riscontro un problema con le query... Malgrado siano impostate (credo correttamente) quando ci vado a cliccare, con i dati inseriti (dove sono stati selezionati vari servizi presenti nelle query) non visualizzo alcun contatto...
Fai clic su nuovo record nella barra di navigazione (in basso, sulla cornice della finestra), o aggiungi una barra di navigazione al formulario e fai clic come già detto, oppure aggiungi un pulsante e lo imposti per aprire un nuovo record.nemo93 ha scritto:Altra domanda, quando vado ad aprire la maschera, mi fa vedere tutti i dati precedentemente inseriti, come posso impostarla affinché mi compaia la pagina pulita pronta per mettere nuovi dati?
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org