Autore Topic: Esempio minimale di database ordinativi usando finestre incorporate.  (Letto 2924 volte)

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #15 il: 24 Ottobre 2015, 17:01:33 »
Ciao a tutti.
Caspita, da un semplice esercizio sulle finestre incorporate siamo giunti alla progettazione di un database per gestire un sistema di ordini...Thing is changing direbbero oltre oceano.
Bene!!!

Tanto per aggiungere un poco di carne al fuoco e per sollecitare ulteriormente la discussione, si potrebbe dire che nell'ambito di Database Relazionali il concetto di Client/Server non si riferisce alle macchine, ma al software. PostgreSQL, MySQL, MariaDB ed altri sono Client/Server perché costituiti da due distinte entità ciascuna delle quali svolge il proprio compito, l'una senza l'altra sono perfettamente inutili. Il Server si occupa di mantenere e gestire, semplificando molto, i dati sotto forma di tabelle, indici, viste ecc. ecc. il Client si rivolge al Server, tramite interrogazioni SQL, per ottenere i dati e restituirli all'utente. In tutto questo non trovo nulla che implichi l'utilizzo di più computer. Le due entità possono essere ospitate dalla stessa macchina.
Personalmente credo che se devi progettare un database per la gestione di dati uniformi come una rubrica telefonica, una collezione musicale o catalogare le foto delle vacanze SQLite sia perfetto, Firefox e Thunderbird lo utilizzano per gestire Segnalibri e Contatti. Ma laddove i dati siano disomogenei, correlati tra loro e magari ad accesso concorrenziale, la scelta cade inesorabilmente su un RDBMS, volevo scrivere PostgreSQL, ma voglio concedere qualche possibilità anche ad altri, anche se utilizzi un solo computer.

Passando alla struttura del DB concordo con le osservazioni fatte da Tornu, alle quali aggiungerei che relativamente agli articoli bisognerebbe prevedere la gestione delle confezioni e delle promozioni. Ti faccio un esempio pratico.
Le fascette metalliche che si utilizzano per fissare i raccordi in gomma, possono essere vendute singolarmente, in confezioni da 10 da 20 o da 100; in pratica lo stesso articolo (la fascetta) diventa più articoli differenti (x10, x20, x100).

Tabella Articoli: 
includerei un campo per il codice a barre.
il campo Art_Iva lo trasformerei in FK sulla tabella Aliquote che contiene le aliquote iva.

Tabella Testata Ordini:
introdurrei i campi Data_Creazione e Data_Evasione

Tabella Clienti:
non userei il campo Cli_Sconto in quanto la percentuale di sconto può variare in base all'articolo; una minuteria può godere di uno sconto diverso rispetto ad un utensile o un macchinario. Bisognerebbe prevedere una struttura di tabelle per gestire le scontistiche dei clienti in base alle categorie merceologiche.

io non ho mai preso in considerazione MySql e tanto meno PostgreSQL di cui so... praticamente niente.
Sono interessatissimo a questi database (sinceramente più a PostgreSQL anche se deve essere tostissimo avendo una logica diversa rispetto ai database relazionali classici) ma non trovi che per introdurre una persona che nulla sa di programmazione e database a questi tipi nati per servire dei client, ci voglia gente con...

No. Non credo tu voglia scrivere la Bibbia della progettazione database, materia complessa ed il cui studio non finisce mai, sono però convinto che sia meglio iniziare con gli strumenti giusti.

Il progetto mi interessa e sicuramente nei limiti delle mie conoscenze e del tempo disponibili parteciperò.
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.158
  • Tonno verde
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #16 il: 24 Ottobre 2015, 21:23:51 »
Codice: [Seleziona]
  Dim i As Integer  
  For i = 1 To 10000000 ' :)))))))))
    Print "Hurrà";; "Bene";; "Viva"
  Next

Carissimo sotema,
ho scelto di risponderti iniziando dal mio stato d'animo.  :D
Però al contempo sono anche preoccupatissimo, non mi sento affatto adeguato al compito, io di database ne so veramente poco il minimo indispensabile per fare qualche ciofeca con SQLite.
Per dire; nell'esempio che ho postato per Picavbg ho usato (un po anche per scherzo) una istruzione o una costruzione SQL come minimo imbarazzante, impossibile da usare in concorrenza. Il mio SQL magari non è così scarso, anche se non ci giurerei e certo è che non brilla. E il fatto di essere stato fermo quasi sei anni non mi ha proprio giovato.
Intendiamoci se tu ci supporti allora le cose cambiano decisamente.  :D :D
Sono partito con l'idea che se avessi avuto un po di supporto dal forum, malgrado la mia inadeguatezza qualcosa sarei riuscito a spiegare.
Ma adesso si inizia a parlare di cose decisamente più invitanti e interessanti, sono veramente felice.  :D :D :D
Allora, bando alle ciance e veniamo a bomba:
Quale database? Io visto che ti sei offerto volontario  ;D ne vorrei subito approfittare per proporre PostgreSQL, abbiamo la possibilità di guidare una Ferrari e ci accontentiamo di una berlina? Però prima di installarlo aspetto l'OK anche di tornu, intanto inizio a studiare come si fa.
Vado anche col progetto tenendo conto dei tuoi suggerimenti, meno male che a tornu avevo già chiesto scusa.
La faccenda delle fascette l'avevo pensata, cioè non delle fascette ma per far vedere come funziona una relazione molti a molti all'interno della stessa relazione-tabella avevo ipotizzato una cassetta degli attrezzi con... e poi mi sono dimenticato di disegnare la tabella.  :'(
A proposito esiste già che tu sappia qualche repository di dati inventati per database di prova?
Hai qualche suggerimento per l'utente da ipotizzare, il mio produttore di articoli idraulici (ma io di idraulica ci capisco poco) può andare?

Sono così contento che non riuscivo neanche a scrivere queste quattro frasi...
 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #17 il: 25 Ottobre 2015, 19:48:50 »
Caro Gianluigi, premesso che non sono assolutamente un esperto, semmai un eterno principiante, innanzitutto apprezzo il tuo entusiasmo ed in secondo luogo il desiderio di scrivere questo manuale. Il progetto, oltre che propedeutico rappresenta un'occasione di collaborazione ed aggregazione del forum.


Veniamo all'oggetto della discussione.
PostgreSQL, se opterai per questo DB, lo puoi installare quasi certamente da gestore dei pacchetti, semmai dovremo spenderere qualche riga (nel manuale) circa la configurazione degli accessi, che risulta appena un poco più complicata rispetto MySQL.

La scelta dell' utente la trovo molto valida, un campo molto vasto e di articoli diversificati. Perlomeno non è la solita biblioteca o concessionaria di auto...

Per quanto riguarda la struttura del DB procederei per passi; partendo da una molto semplice, magari anche con qualche errore o carenze, per poi svilupparla passo passo, introducendo le migliorie e le correzzioni necessarie alla compressione dei concetti espressi.
Per meglio capirci, inizialmente per introdurre il concetto di relazione una tabella Cliente con i soli campi: Id, Ragione Sociale, Indirizzo, Comune, Cap e Telefono potrebbe bastare. In seguito la completermo aggiungendo i campi necessari (PartitaIva, CodiceFiscale, ...)

Coraggio Capitano parti alla guida della tua truppa...
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #18 il: 26 Ottobre 2015, 20:17:05 »
.....In definitiva un pc non attaccato informaticamente ad una rete  locale o intranet ,  è un pc stand-alone, mentre un sistema con due o più pc di cui il principale è un server, mentre  tutti  gli altri, logicamente connessi ad esso, sono chiamati client a costituiscono il cosiddetto mmodello client/server.
Scusate se non sono stato sufficientemente tecnico nell'esposizione di un concetto per me planetario, ma meglio non ho saputo fare.  :-\
Ciao a tutti e due.
Nell' accezione hardware e come dici tu.

Passando alla struttura del DB concordo con le osservazioni fatte da Tornu, alle quali aggiungerei che relativamente agli articoli bisognerebbe prevedere la gestione delle confezioni e delle promozioni. Ti faccio un esempio pratico.
Le fascette metalliche che si utilizzano per fissare i raccordi in gomma, possono essere vendute singolarmente, in confezioni da 10 da 20 o da 100; in pratica lo stesso articolo (la fascetta) diventa più articoli differenti (x10, x20, x100).
Con Gianluigi non sono andato molto in profondità visto il suo intento, ma se c'è la volontà..., a quello che hai detto con cui sono pienemente d'accordo, aggiungo che hai introdotto il concetto di "confezione" che può avere vari aspetti sia in fase di vendita ma
anche in fase di acquisto. Uno per esempio è questo: acquisto in confezioni da 100 Pz. (confezione minima di acquisto) a seconda
del fornitore può avere il prezzo per confezione oppure per unità della stessa, e io vendo a pezzi singoli.
Non sono d'accordo sul discorso che l'articolo se è in confezioni (imballo) diverse diventi più articoli, in questo caso siccome l'articolo
è sempre lo stesso anche se in imballi diversi il discorso si può gestire implementando l'uso di funzioni come il moltiplicatore quantità o il fattore di conversione.

Citazione
Tabella Articoli: 
includerei un campo per il codice a barre.
il campo Art_Iva lo trasformerei in FK sulla tabella Aliquote che contiene le aliquote iva.
Anche più di uno, è la possibilità di generarne uno automaticamente da programma se il fornitore non lo prevvede.
Che significa FK ?

Citazione
Tabella Testata Ordini:
introdurrei i campi Data_Creazione e Data_Evasione
:ok:

Citazione
Tabella Clienti:
non userei il campo Cli_Sconto in quanto la percentuale di sconto può variare in base all'articolo; una minuteria può godere di uno sconto diverso rispetto ad un utensile o un macchinario. Bisognerebbe prevedere una struttura di tabelle per gestire le scontistiche dei clienti in base alle categorie merceologiche.
Sono d'accorto con te, era per semplificare, in questo caso bisogna introdurre una gestione di politiche di acquisto e vendita legate alle categorie merceologiche.

Citazione
No. Non credo tu voglia scrivere la Bibbia della progettazione database, materia complessa ed il cui studio non finisce mai, sono però convinto che sia meglio iniziare con gli strumenti giusti.
La penso come te. Credo che Gianluigi abbia capito cosa intendevo con le mie varie risposte alle sue perplessità, perchè avvolte volendo
semplificare troppo (è capisco il suo intento) ci si complica la vita.

Citazione
Il progetto mi interessa e sicuramente nei limiti delle mie conoscenze e del tempo disponibili parteciperò.
Io non sò se per un progetto tale con tutti i limiti che possiamo avere, ma comunque cercando di realizzarlo al meglio delle nostre
conoscenze si possa fare con SQLite, che come ho detto io non conosco, altrimenti il primo passo è quello di decidere su quale
database, ed in ogni caso potrebbe essere una discussione molto interessante (almeno per me) da cui Gianluigi in ogni caso
potrebbe trarre spunti da una "applicazione reale" per i suoi esempi da riportare sul libro.
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #19 il: 26 Ottobre 2015, 20:21:48 »
Caro Gianluigi, premesso che non sono assolutamente un esperto, semmai un eterno principiante, innanzitutto apprezzo il tuo entusiasmo ed in secondo luogo il desiderio di scrivere questo manuale. Il progetto, oltre che propedeutico rappresenta un'occasione di collaborazione ed aggregazione del forum.


Veniamo all'oggetto della discussione.
PostgreSQL, se opterai per questo DB, lo puoi installare quasi certamente da gestore dei pacchetti, semmai dovremo spenderere qualche riga (nel manuale) circa la configurazione degli accessi, che risulta appena un poco più complicata rispetto MySQL.

La scelta dell' utente la trovo molto valida, un campo molto vasto e di articoli diversificati. Perlomeno non è la solita biblioteca o concessionaria di auto...

Per quanto riguarda la struttura del DB procederei per passi; partendo da una molto semplice, magari anche con qualche errore o carenze, per poi svilupparla passo passo, introducendo le migliorie e le correzzioni necessarie alla compressione dei concetti espressi.
Per meglio capirci, inizialmente per introdurre il concetto di relazione una tabella Cliente con i soli campi: Id, Ragione Sociale, Indirizzo, Comune, Cap e Telefono potrebbe bastare. In seguito la completermo aggiungendo i campi necessari (PartitaIva, CodiceFiscale, ...)

Coraggio Capitano parti alla guida della tua truppa... 

 :ok:  :ok:  :ok:   :coder:   :hatecomputer:
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #20 il: 26 Ottobre 2015, 22:20:53 »
Scusate se soono conciso ma ho poco tempo e sto rispondendo da cellulare (a proposito Ubuntu Phone, pur non essendo a mio parere pronto per la distribuzione di massa, mi piace assai).
Sono contento della sintonia con Tornu, significa che non ho detto delle cavolate. Per quanto riguarda il DB opterei per PGSQL  ma solo perché lo conosco meglio. Se decidi per MYsql sarà l'opportunità di studiarlo.

@Tornu FK=Foreign Key
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.158
  • Tonno verde
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #21 il: 26 Ottobre 2015, 23:34:52 »
Ciao tornu,
vedo che approvi PostgreSQL  :D :D :D
Aggiungo PK = Primary Key, CPK = Composite Primary Key, CPK/FK Composite Primary Key/Foreign Key
Per disegnare i database io uso 1 lato UNO e M lato MOLTI ma è errato occorrerebbe usare N. I più tanti usano disegnare una riga che unisce le chiavi con una forchetta a tre punte lato molti e una barra che interseca la riga lato uno.

Ciao sotema,
prima di tutto ti ringrazio delle bellissime parole di incoraggiamento però “Capitano”... forse di lungo sorso :) ma una volta, adesso sono stato relegato alla moderazione.  :'(

Tornando al nostro bellissimo problema; malgrado sia subito partito a testa bassa dopo il tuo primo intervento e abbia già tirato giù un elenco provvisorio di tabelle da paura che ti elenco così ti spaventi anche tu :)
Clienti, Vettori, Fornitori, Addetti, Impiegati, TestataOrdini, RigheOrdini, Articoli, MagazzinoArticoli, Destinazioni, DDT, Misure, TipiTrasporto, Pagamenti, IvaCodici, IvaEsenzioni, Depositi, Banche e stavo ragionando su cosa ancora inserirvi, quali tabelle di raccordo ci volessero, se non fosse il caso di considerare anche le offerte e mi ero già preparato parecchie domande ecco che tu giustamente mi riporti alla realtà, bene.

Se l'obbiettivo rimane quello iniziale e cioè aiutarmi a scriverne nel libro per instradare un neofita alla comprensione dei database va benissimo iniziare così, ma io intravedo in questa discussione l'embrione di qualcosa di più ampio e potremmo provare a coltivarlo, alla mal parata nulla ci vieta di riprendere la vecchia via pardon, rotta.

Se è vero come ami scrivere che non si finisce mai di imparare ed è vero, allora questa potrebbe essere l'occasione per sviscerare quello che crediamo di sapere su come si costruisce per benino un database per una piccola azienda.
Questo chiaramente non può stare in un libro i cui obbiettivi sono necessariamente, visto chi lo scrive, limitatissimi.

Date queste premesse se volessimo proseguire il discorso direi che potremmo partire dall'esigenza primaria e cioè: Di cosa ha bisogno l'azienda che ci ha contattati?

Come ricorda tornu anche qui siamo governati da un database e pertanto per non esagerare allego un file Writer, con allegati due pdf, che analizza un po più a fondo le nuove esigenze aziendali, cosa ne pensate se invece di iniziare con un po di tabelle stringate da ampliare via via, iniziassimo con un passo passo metodologico che possa insegnarci come si affrontano questi problemi?
La tiro giù un po così:
Prima capire le esigenze del cliente. Ad esempio cosa mi sono dimenticato di chiedere?
In base a queste esigenze fissare gli obiettivi del database.
Scomporre le informazioni e raggrupparle in relazioni.
Disegnare le tabelle cercando le chiavi primarie
Cercare le relazioni fra tabelle e le chiavi esterne
Disegnare le tabelle di raccordo
Installare PostgreSQL
Installare pgAdmin III per poter controllare le interrogazioni?
Capire come far dialogare Gambas col database
Creare finalmente con Gambas il database e popolarne le tabelle.
Creare l'interfaccia grafica
A questo punto sarò ancora vivo?
Altre ed eventuali
Inutile per ora proseguire oltre col discorso attendo un vostro riscontro.
Guardate, non so esprimervi tutta la gratitudine che provo per voi in questo momento  :-*  :-*
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.158
  • Tonno verde
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #22 il: 27 Ottobre 2015, 00:10:47 »

Passando alla struttura del DB concordo con le osservazioni fatte da Tornu, alle quali aggiungerei che relativamente agli articoli bisognerebbe prevedere la gestione delle confezioni e delle promozioni. Ti faccio un esempio pratico.
Le fascette metalliche che si utilizzano per fissare i raccordi in gomma, possono essere vendute singolarmente, in confezioni da 10 da 20 o da 100; in pratica lo stesso articolo (la fascetta) diventa più articoli differenti (x10, x20, x100).
Con Gianluigi non sono andato molto in profondità visto il suo intento, ma se c'è la volontà..., a quello che hai detto con cui sono pienemente d'accordo, aggiungo che hai introdotto il concetto di "confezione" che può avere vari aspetti sia in fase di vendita ma
anche in fase di acquisto. Uno per esempio è questo: acquisto in confezioni da 100 Pz. (confezione minima di acquisto) a seconda
del fornitore può avere il prezzo per confezione oppure per unità della stessa, e io vendo a pezzi singoli.
Non sono d'accordo sul discorso che l'articolo se è in confezioni (imballo) diverse diventi più articoli, in questo caso siccome l'articolo
è sempre lo stesso anche se in imballi diversi il discorso si può gestire implementando l'uso di funzioni come il moltiplicatore quantità o il fattore di conversione.

Io da quanto dite capisco questo e spero sia corretto: Siccome un articolo in un database deve apparire una sola volta in un punto e poi richiamato in ridondanza dove serve solo e unicamente attraverso la sua chiave primaria, allora occorre richiamarlo così anche nello stesso listino prezzi se appare altre volte perché presente in kit o imballaggi diversi. È questo che mi volevate suggerire? Se è così sono perfettamente d'accordo con voi.

Citazione
Citazione
Il progetto mi interessa e sicuramente nei limiti delle mie conoscenze e del tempo disponibili parteciperò.
Io non sò se per un progetto tale con tutti i limiti che possiamo avere, ma comunque cercando di realizzarlo al meglio delle nostre
conoscenze si possa fare con SQLite, che come ho detto io non conosco, altrimenti il primo passo è quello di decidere su quale
database, ed in ogni caso potrebbe essere una discussione molto interessante (almeno per me) da cui Gianluigi in ogni caso
potrebbe trarre spunti da una "applicazione reale" per i suoi esempi da riportare sul libro.
Siamo d'accordo no si usa la Ferrari (PostgreSQL).
La discussione è interessantissima in qualsiasi modo, certo è che se accettate di partecipare ad una costruzione che parte dall'esigenza del cliente e che prima di fare il passo successivo analizza il problema attraverso le vostre esperienze (io metto tutte le idee che mi passano per la testa e buona volontà  :-[), credo che faremmo qualcosa di valido per tutti gli appassionati a queste cose.
 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #23 il: 27 Ottobre 2015, 00:58:42 »
Ciao tornu,
vedo che approvi PostgreSQL  :D :D :D
Aggiungo PK = Primary Key, CPK = Composite Primary Key, CPK/FK Composite Primary Key/Foreign Key
Per disegnare i database io uso 1 lato UNO e M lato MOLTI ma è errato occorrerebbe usare N. I più tanti usano disegnare una
riga che unisce le chiavi con una forchetta a tre punte lato molti e una barra che interseca la riga lato uno.
Grazie per le spiegazioni, non ho detto che approvo PostgreSQL, ma come ha detto sotema visto che ognuno di noi conosce un database diverso, nessun problema, non l'ho mai provato con Gambas leggo ogni tanto documentazione che lo riguarda come
per altri, ma mi intressa conoscerlo, quindi se si decide per questo disponibile a studiarlo. Quindi se sotema o chiunque vuole
partecipare è d'accordo decidi tu.
L'elenco di tabelle che hai indicato sono già un buon punto di partenza, ma come tu stesso hai detto  andiamo per gradi, quindi teniamole presenti e le esaminiamo più avanti. Io direi se siete d'accordo per prima cosa installiamo il DB scelto, proviamolo con
Gambas anche con un piccolo progetto test, scambiamoci documentazione a riguardo se qualcuno già ne possiede e andiamo
avanti, che ne pensate?
Caspita  :o Gianluigi, se già arrivato ai modelli di DDT e Fattura... ;)


« Ultima modifica: 27 Ottobre 2015, 01:01:35 da tornu »
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline sotema

  • Maestro Gambero
  • ****
  • Post: 467
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #24 il: 27 Ottobre 2015, 07:35:01 »
Caspita  :o Gianluigi, se già arrivato ai modelli di DDT e Fattura... ;)
[/quote

Cavolicchio, mi viene il dubbio che Gianluigi voglia scrivere il gestionale per un suo cliente e ci stia sfruttando... ;D
Scherzi a parte, propongo di fare una pausa e focalizzare l'obiettivo. Sono cose completamente diverse scrivere un manuale per lo studio dei DB e progettare un gestionale.

In qualità di Team Leader ti spetta la responsabilità di guidare le scelte e decidere la strategia.  :P
L'uomo ha inventato la bomba atomica, ma nessun topo al mondo costruirebbe una trappola per topi.
Albert Einstein

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.158
  • Tonno verde
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #25 il: 27 Ottobre 2015, 13:24:30 »
Caspita  :o Gianluigi, se già arrivato ai modelli di DDT e Fattura... ;)

Cavolicchio, mi viene il dubbio che Gianluigi voglia scrivere il gestionale per un suo cliente e ci stia sfruttando... ;D

Ahi, lo sapevo, me lo sentivo che prima o poi avreste scoperto il mio subdolo gioco  :rotfl:
Devi sapere che sto sfruttando indegnamente i lontani ricordi della mia dolce metà che ha lavorato una vita come segretaria d'ufficio in una piccola azienda, da quando è iniziata questa storia ho notato che ha sempre qualcosa da fare in città.
Io nel mio trascorso lavorativo ho anche 26 anni da rappresentante di commercio...

Avete presente quei comandati che dicono: “Armiamoci e partite” oppure quegli altri “Avanti miei prodi!” poi si volta e non c'è più nessuno?
Rammento che usa dire: “Patti chiari amicizia lunga”, tranquilli ho finito i modi di dire :)
Citazione

In qualità di Team Leader ti spetta la responsabilità di guidare le scelte e decidere la strategia.  :P

In  qualità di Cheer Leader avrei anche deciso (PostgreSQL e passo passo metodologico), ma non volendo fare la fine dell'ultimo comandante, vorrei capire bene se siete d'accordo nel provare la nuova rotta.

È vero, ho chiesto aiuto al forum per il libro; poi però tornu ha detto cose che mi hanno fatto capire che c'era la possibilità di discutere più approfonditamente.
Questo mi ha fatto riflettere, guardando le discussioni sul forum riguardo la materia ci si rende conto che spessissimo non ci si comprende, perché ognuno di noi vede il database in modo diverso.
Normale, penserete, trattasi di materia così ampia, vero.

Citazione
Scherzi a parte, propongo di fare una pausa e focalizzare l'obiettivo. Sono cose completamente diverse scrivere un manuale per lo studio dei DB e progettare un gestionale.


Guarda con Top Fuel, che ahimè di database non sa, stiamo scrivendo un libro per neofiti che nulla sanno di programmazione, il capitolo dedicato al database voleva essere, come tutto il resto, solo uno spunto di introduzione con Gambas e SQL con un piccolo esempio pratico, nessun manuale all'uso del database per carità che in rete già ci sono e io poi...

Concordo con te si tratta di un'altra cosa, di qualcosa di decisamente più intrigante e affascinante.  :D
Capisco anche che ci possano essere delle perplessità sullo sviscerare tutto quello che sappiamo sull'argomento (io ho poche viscere  :-[), so che ci sono persone contrarie al fatto che si vada troppo nel particolare e si finisca per far male anziché bene, io non sono fra quelle io credo che senza il confronto su tutto, materie così difficili mai saranno capite a fondo da persone come me.

Devo dire una cosa è chiaro che da questo tipo di confronto chi ne ha più da guadagnare sono io, e credete non mi offendo se volete tornare al libro, che ogni aiuto è benedetto.

Caro sotema tu sei quello che praticamente ci rimette usi già PostgreSQL, sei tu che devi benedire la nuova rotta, se la benedici salpiamo verso i nuovi lidi.
 :ciao:

nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.158
  • Tonno verde
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #26 il: 27 Ottobre 2015, 19:14:21 »

Grazie per le spiegazioni, non ho detto che approvo PostgreSQL
...
 ma come tu stesso hai detto  andiamo per gradi, quindi teniamole presenti e le esaminiamo più avanti. Io direi se siete d'accordo per prima cosa installiamo il DB scelto, proviamolo con
Gambas anche con un piccolo progetto test, scambiamoci documentazione a riguardo se qualcuno già ne possiede e andiamo
avanti, che ne pensate?
Sono d'accordo con te.  :ok:

Io per installare PostgreSQL su Ubuntu 14.04 in internet ho trovato  questo:

Da terminale:

sudo apt-get install postgresql

Per l'nterfaccia grafica:

sudo apt-get install pgadmin3

Creare la password per l'user:

sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD 'LA_TUA_PASSWORD'"

Aprire l'interfaccia grafica iniziando a digitare pdad... nella dash

Nella finestra che si apre di pgAdmin andare su File>Adserver

si apre una finestra Properties dove digiteremo:

Address = 127.0.0.1
Description = Database prova
Service = db_Prova
Port = 5432
SSL =
Maintenance DB = postgres
Username = postgres
Password = LA_TUA_PASSWORD


Le cose stanno ancora così? Perché questo sito sembrava obsoleto tipo anno 2008

E poi? Il database db_Prova è aperto? Ci posso ravanare dentro?

Oppure devo aprirlo da terminale con sudo /etc/init.d/postgresql-n.n start ?
Ma poi scusate per lavorarci devo essere root? Non ho creato una password per l'user proprio per non operare come utente postgres che per PostgreSQL è come dire sudo in Ubuntu?
 ???  ???  ???
Prima di fare "paciughi" aspetto guru-dritte.

Citazione
Caspita  :o Gianluigi, se già arrivato ai modelli di DDT e Fattura... ;)

È il cliente che mi ha detto che vuole quella roba lì. ;)
 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #27 il: 27 Ottobre 2015, 19:51:32 »
Ciao
Io uso Postgres da qualche anno e mi trovo molto bene.
Lo installo nel mio sistema ( Mint KDE 17) direttamente col gestore pacchetti, quindi si trova nei repository. installo POSTGRESQL e PGADMIN

Una volta installato devi impostare la password, io faccio così:
da terminale
Citazione
sudo -u postgres psql template1
ALTER USER postgres WITH PASSWORD 'miapassword';
\q

Comunque ho pescato anch'io da quà
https://ilpinguinofurioso.wordpress.com/2007/08/08/installare-postgresql-su-ubuntu-704-feisty-fawn/
Ciao

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #28 il: 27 Ottobre 2015, 19:58:28 »
Così mi connetto con gambas

Codice: [Seleziona]

Public $myconn As New Connection

Public Sub Connect()

 $myconn.Close
       With $myconn
          .Type = "postgresql"
          .Host = "127.0.0.1"
          .Name = "MioDatabase"
          .Login = "postgres"
          .Password = "MiaPassword"
          .port = "5432"
       End With 
    Try $myconn.Open()
    If Error Then $myconn.Close()
   
    Catch
 Message.Error("Connessione non riuscita")     
End

Se avete bisogno son quà  :2birre:
« Ultima modifica: 27 Ottobre 2015, 19:59:22 da Golia »

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re:Esempio minimale di database ordinativi usando finestre incorporate.
« Risposta #29 il: 27 Ottobre 2015, 22:28:12 »
Così mi connetto con gambas

Codice: [Seleziona]

Public $myconn As New Connection

Public Sub Connect()

 $myconn.Close
       With $myconn
          .Type = "postgresql"
          .Host = "127.0.0.1"
          .Name = "MioDatabase"
          .Login = "postgres"
          .Password = "MiaPassword"
          .port = "5432"
       End With 
    Try $myconn.Open()
    If Error Then $myconn.Close()
   
    Catch
 Message.Error("Connessione non riuscita")     
End

Se avete bisogno son quà  :2birre:

Ciao Golia,
ben ritrovato, mi fa piacere il tuo intervento, se vuoi salire a bordo di questa...avventura... a me fà molto piacere,
ma son sicuro anche agli altri, visto che se non ricordo male hai sviluppato "tanto tempo fà" un piccolo gestionale
per uso tuo personale che non so se usi ancora condividendo con il Forum la tua esperienza. Guardando il codice
che hai postato per collegare Gambas a PostgreSql o notato che è praticamente identico al sistema che uso io per
MySql, appena installo PgSql lo provo.
Ne approfitto è faccio qui la domanda, in attesa di fare una ricerca, magari qualcuno di voi mi risponde al volo:
posso avere MySql e PostgreSql nello stesso computer, e visto che ho installato PhpMyAdmin per gestire MySql
è compatibile con PgSql.
Golia, grazie per la disponibilità.   :ciao:
« Ultima modifica: 27 Ottobre 2015, 22:30:34 da tornu »
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)