Collegamento db excel-cataloghi PDF

di il
20 risposte

Collegamento db excel-cataloghi PDF

Buonasera a tutti,
ho un idea ambiziosa ma non ho le conoscenze né per svilupparla né le idee chiare sulla fattibilità del progetto. Di certo non pretendo che qualcuno mi serva la soluzione, mi basterebbe un chiarimento delle idee.
Per farla breve:
Lavorando in un'azienda che commercia molti articoli di diversi fornitori mi sarebbe piaciuto creare un database per i dipendenti (agenti, impiegati) che sia consultabile per parole chiave (anche più di una) e che fornisca tutti i dati disponibili, attingendo sia dai prezzi e dalle descrizioni dei listini excel dei fornitori, ma che colleghi anche, attraverso un codice comune (codice articolo), alla pagina dell'articolo, nel catalogo PDF.
Questo permetterebbe anche di confrontare articoli simili ma di fornitori diversi e poter fare una scelta in base al prezzo.
Apparentemente sembra semplice, visto che moltissimi siti di commercio online permettono di fare tutto ciò, ma nel nostro caso il volume di dati è davvero notevole, parliamo di 10-20 mila righe per listino (circa 50 listini) + altri minori.
Ho a disposizione tutti i listini in formato excel, anche se molti sono da sistemare, e poi naturalmente i rispettivi cataloghi in formato PDF.
Non ho idea se con Access si possibile fare una cosa del genere, oppure se sia necessario qualche altro programma.
Spero che qualche buon'anima mia dia qualche idea.
Grazie infinitamente.

20 Risposte

  • Re: Collegamento db excel-cataloghi PDF

    Access, MySQL, Oracle (cito quelle che mi saltano più facilmente alla mente) sono applicazioni che creano e gestiscono DATABASE.
    Access può gestire tranquillamente la mole di dati che avresti accennato

    snowluk ha scritto:


    parliamo di 10-20 mila righe per listino (circa 50 listini)
    È importante sottolineare che la logica dei database fatta da più tabelle relazionate, nulla ha a che spartire con la logica Excel mirante a "fogli elettronici di calcolo".
    Per il resto ti serve studiare Access partendo da un manuale di base che possibilmente sfrutti una struttura di tabelle similare al tuo problema. Il classico esempio del database Northwind potrebbe avvicinarsi su alcune linee generali.
  • Re: Collegamento db excel-cataloghi PDF

    Grazie per la risposta Osvaldo.
    Una domanda:
    Che tipo di manuale di base consigli?
    Non ho capito cosa intendi sulla logica di Excel e la logica dei database di tabelle relazionate.
    Grazie ancora
  • Re: Collegamento db excel-cataloghi PDF

    Francamente non userei Access per un lavoro del genere, ma un "vero" programma (es. Delphi, C# o quello che vuoi).
    Qui il problema principale è manipolare i PDF.
    Si semplifica abbastanza se il link è banalmente a una pagina del PDF, e non ad un bookmark PDF eventualmente da creare
  • Re: Collegamento db excel-cataloghi PDF

    Questo è il classico problema per cui sono stati pensati i datawarehouse.

    Un datawarehouse, come struttura, è un normale database (quindi può essere realizzato con access, mysql, oracle ecc.), ottimizzato però per eseguire ricerche e aggregazioni di dati mediante una parziale denormalizzazione dello schema, e l'utilizzo di un linguaggio SQL esteso (quest'ultima caratteristica è presente in oracle, mentre non è presente, o lo è solo parzialmente, negli altri casi).

    Ad esempio, in un datawarehouse potresti rispondere efficientemente a domande del tipo:
    Per ogni articolo, restituisci il pdf (o un link ad esso) e il numero totale di articoli forniti dai fornitori, separatamente per ogni mese e regione del fornitore.
    Il problema principale resta in ogni caso alimentare il datawarehouse, ovvero verificare che il formato delle sorgenti (i file excel) sia consistente e coerente, e in caso contrario modificarlo opportunamente.
  • Re: Collegamento db excel-cataloghi PDF

    Direi che il datawarehouse non è del tutto pertinente, in questo caso.
    Basta un banale archivio di associazione articolo->pdf->pagina e un "qualche" metodo per lanciare un visualizzatore (interno o esterno) che apra il PDF in quella pagina
  • Re: Collegamento db excel-cataloghi PDF

    +m+ ha scritto:


    Direi che il datawarehouse non è del tutto pertinente, in questo caso.
    Basta un banale archivio di associazione articolo->pdf->pagina e un "qualche" metodo per lanciare un visualizzatore (interno o esterno) che apra il PDF in quella pagina
    Dipende da quanto deve essere versatile la cosa.

    Snowluk scriveva che vorrebbe permettere di effettuare ricerche per parole chiave, "anche più di una". Inoltre, vorrebbe poter effettuare dei confronti e scelte in base a fornitore, prezzo ecc.. Ho quindi immaginato che avere un unico database di dati conciliati, su cui poi costruire un applicazione che permetta di eseguire query parametrizzate, potesse essere più comodo ed eventualmente più facilmente modificabile di un unico programma che esegue delle ricerche predefinite su un insieme di sorgenti che potrebbero anche contenere dati con formati diversi.
  • Re: Collegamento db excel-cataloghi PDF

    snowluk ha scritto:


    Che tipo di manuale di base consigli?
    Il forum suggerisce questi titoli
    https://www.iprogrammatori.it/forum-programmazione/access/libri-access-consigliati-per-principianti-esperti-t13142.html
    Io ho cominciato da "McGraw-Hill: Computer no problem - Access" che prendeva in considerazione il database Northwind.

    snowluk ha scritto:


    Non ho capito cosa intendi sulla logica di Excel e la logica dei database di tabelle relazionate.
    Lo capirai quando lo studierai. Giusto per farti capire qualcosa...:
    1. Un foglio elettronico di Excel non può raggiungere più di qualche migliaio di righe (non conosco il numero esatto) e quando sono davvero tante anche Excel comincia a vacillare in termini di prestazioni.
    Una tabella di Access può gestire tranquillamente centinaia di migliaia di record se non addirittura milioni (vado sempre a braccio senza numeri precisi).
    2. I dati in Access NON vanno messi TUTTI IN UNA TABELLA, ma organicamente e omogeneamente suddivisi secondo una logica ben precisa che grazie alle relazioni permette gestioni di ben più ampie mole di dati.
  • Re: Collegamento db excel-cataloghi PDF

    OsvaldoLaviosa ha scritto:


    snowluk ha scritto:


    Che tipo di manuale di base consigli?
    Il forum suggerisce questi titoli
    https://www.iprogrammatori.it/forum-programmazione/access/libri-access-consigliati-per-principianti-esperti-t13142.html
    Io ho cominciato da "McGraw-Hill: Computer no problem - Access" che prendeva in considerazione il database Northwind.

    snowluk ha scritto:


    Non ho capito cosa intendi sulla logica di Excel e la logica dei database di tabelle relazionate.
    Lo capirai quando lo studierai. Giusto per farti capire qualcosa...:
    1. Un foglio elettronico di Excel non può raggiungere più di qualche migliaio di righe (non conosco il numero esatto) e quando sono davvero tante anche Excel comincia a vacillare in termini di prestazioni.
    Una tabella di Access può gestire tranquillamente centinaia di migliaia di record se non addirittura milioni (vado sempre a braccio senza numeri precisi).
    2. I dati in Access NON vanno messi TUTTI IN UNA TABELLA, ma organicamente e omogeneamente suddivisi secondo una logica ben precisa che grazie alle relazioni permette gestioni di ben più ampie mole di dati.
    Più che altro, i dbms prevedono la presenza di indici che, se usati correttamente, permettono un accesso più veloce ai dati. Inoltre usano strutture dati più compatte per memorizzare le tabelle.

    La creazione di più tabelle collegate mediante chiavi esterne può essere fatta anche in excel, tant'è che la maggior parte dei dbms permettono l'importazione di dati da excel. Però ovviamente non puoi imporre vincoli di integrità, e non hai sql.
  • Re: Collegamento db excel-cataloghi PDF

    Innanzitutto, grazie per la viva partecipazione alla discussione.
    Purtroppo non sono, ne sarò mai in grado di sviluppare quanto descritto, quindi mi dovrò avvalere di un professionista, e devo dire che le informazioni che mi state dando mi sono molto utili per capire anche che tipo di programma si potrebbe utilizzare.
    Per rendere ancora più specifico il campo di applicazione volevo sottoporvi altre indicazioni (perdonatemi se utilizzo dei termini scorretti)

    Normalmente riceviamo listini in formato excel che sono formattati secondo le preferenze di ciascun fornitore (A questo proposito dovrei sentire ad uno ad uno i fornitori per conoscere se hanno dei listini più completi e dettagliati possibile). Questi listini, come potete intuire, cambiano regolarmente: dai qui l'esigenza di poter aggiornare i dati senza troppi problemi.
    Il listino dovrebbe contenere tutte le informazioni sensibili per la ricerca, e naturalmente allo stato attuale non ci sono tutti i dati.

    La ricerca nell'interfaccia dovrebbe simile a dei filtri, quindi dovrebbero esserci molti campi da poter compilare ex:
    Descrizione (Ex: PUNTA) Lunghezza (3xD, 5xD ecc. scelta multipla) Materiale (Hss, metallo duro ecc. potrebbe anche essere una scelta multipla) tipo di rivestimento (nessuno, TIN, VAP) lubrificazione interna (si,no) oppure se si è già a conoscenza del codice si dovrebbe poter utilizzare quello e gli altri campi descrittivi dovrebbero autocompletarsi per poter estrarre i prodotti comparativi.

    A questo punto nasce l'esigenza di collegare (attraverso il codice articolo) ogni singola riga del listino alla pagina del catalogo relativo, in formato PDF.
    Questo per venire incontro agli agenti, i quali, trovandosi dal cliente e dovendo ricercare un articolo specifico, possano agevolmente ricercare tutti i prodotti comparativi che l'azienda vende, possibilmente in ordine di prezzo, e possano velocemente andare alla pagina del catalogo relativo per poter mostrare al cliente il prodotto, e per verificare l'esattezza di quanto si cercava.

    Credete che sia possibile realizzare un'applicazione del genere?
    Magari poi ci sono già dei programmi dedicati che non conosco.
    A mio parere il grosso del lavoro è creare un database con tutti i dati ben compilati e catalogati, e, vista la mole e la diversità degli articoli trattati non è una cosa scontata.
    Visto che ci siamo, sapreste indicarmi in maniera del tutto spannometrica, quanto potrebbe costare sviluppare un applicazione del genere?

    Grazie ancora!
  • Re: Collegamento db excel-cataloghi PDF

    Dimenticavo, la preparazione dei listini la faremmo internamente (seguendo le linee guida che ci verrebbero fornite) anche perché le descrizioni talvolta devono essere inserite manualmente, quindi da qualcuno che conosce il prodotto.
  • Re: Collegamento db excel-cataloghi PDF

    snowluk ha scritto:


    La ricerca nell'interfaccia dovrebbe simile a dei filtri, quindi dovrebbero esserci molti campi da poter compilare ex:
    Descrizione (Ex: PUNTA) Lunghezza (3xD, 5xD ecc. scelta multipla) Materiale (Hss, metallo duro ecc. potrebbe anche essere una scelta multipla) tipo di rivestimento (nessuno, TIN, VAP) lubrificazione interna (si,no) oppure se si è già a conoscenza del codice si dovrebbe poter utilizzare quello e gli altri campi descrittivi dovrebbero autocompletarsi per poter estrarre i prodotti comparativi.
    Access offre tutto questo, ma occorre progettarlo accuratamente.

    snowluk ha scritto:


    A questo punto nasce l'esigenza di collegare (attraverso il codice articolo) ogni singola riga del listino alla pagina del catalogo relativo, in formato PDF.
    Questo per venire incontro agli agenti, i quali, trovandosi dal cliente e dovendo ricercare un articolo specifico, possano agevolmente ricercare tutti i prodotti comparativi che l'azienda vende, possibilmente in ordine di prezzo, e possano velocemente andare alla pagina del catalogo relativo per poter mostrare al cliente il prodotto, e per verificare l'esattezza di quanto si cercava.
    Riguardo il collegamento con una pagina di un file PDF...si può fare, ma occorre gestire un apposito codice VBA che apra il file PDF (memorizzato in apposita cartella)(fin qui nulla ti traumatico) e punti sulla pagina (questo diventa più complesso).
    Eppure sempre Access può gestire in maniera più efficace qualsiasi forma di ricerca che non il semplice invio a una pagina di un PDF.

    Per tutte le altre domande successive. Partendo da zero il lavoro non è da poco...ma se hai detto che ci sono già vari file Excel, da essi è possibile fare una importazione in Access e già buona parte di un lavoro preliminare sarebbe fatta.
    Il grosso sarebbe abbellire tutto e rendere a portata di qualsiasi tipo di ricerca l'intero progetto.
    A seconda della bravura del programmatore potrebbe trattarsi di un lavoro di ordinaria amministrazione...io lo trovo impegnativo, ma non saprei quantificarne i costi.
  • Re: Collegamento db excel-cataloghi PDF

    snowluk ha scritto:


    Innanzitutto, grazie per la viva partecipazione alla discussione.
    Purtroppo non sono, ne sarò mai in grado di sviluppare quanto descritto, quindi mi dovrò avvalere di un professionista,
    Allora guardati in giro, perché vi sono già programmi che fanno questo, e farlo fare ex-novo vi costa una cifra.

    Su due piedi non so darti indicazioni più precise, ma ricordo che diversi anni fa, mentre stavo lavorando da un cliente, i dipendenti mi mostrarono un programma che stavano valutando che faceva più o meno quello che serve a te, non solo!
    Da quel che ricordo vagamente, si potevano addirittura aprire dal programma dei disegni di AutoCAD (ovviamente preventivamente già importati), da cui il programma individuava i codici degli elementi (link attivi) che permettevano di visualizzarne la scheda, creava cataloghi, prendeva i dati da diverse sorgenti (quindi PDF, database, Excel, Word, ecc.)

    Posso vedere di informarmi meglio, se ti interessa.
  • Re: Collegamento db excel-cataloghi PDF

    Potrebbe essere l'esempio classico di un nostro fornitore che produce moltissimi articoli e ha l'esigenza di creare un catalogo partendo dai dei disegni di Autocad. Da questo mi viene da pensare che molti fornitori abbiano già dei database ben compilati, che normalmente non vengono trasmessi...
  • Re: Collegamento db excel-cataloghi PDF

    A me il problema più complesso da risolvere sembra invece la conciliazione delle fonti (ovvero: rendere coerenti i file excel provenienti dai vari fornitori sia dal punto di vista della struttura delle tabelle, che da quello del formato dei dati (considera che se i alcuni dati sono inseriti a mano, potrebbero essere presenti errori di battitura o abbreviazioni, il che renderebbe impossibile o quantomeno molto lenta qualsiasi ricerca, per cui i dati vanno riconciliati a monte)).
    Per risolvere il problema, esistono gli strumenti ETL (Extraction Transformation and Load), per cui esistono anche dei framework open source, ma comunque è necessaria una ricognizione delle sorgenti per vedere se è possibile ottenere buoni risultati (gli strumenti etl non possono fare miracoli, e quando non riescono a correggere un record solitamente lo scartano).

    Riguardo la selezione della pagina di un pdf, la vedo relativamente semplice: pdf è un linguaggio di markup con una struttura ad albero e tag (mi pare che la sintassi sia simile a latex per certi versi), per cui basta sapere i tag che delimitano le pagine e contare finché non si arriva alla pagina giusta.
Devi accedere o registrarti per scrivere nel forum
20 risposte