Ingannare access bypassando formato data americano

di il
31 risposte

31 Risposte - Pagina 2

  • Re: Ingannare access bypassando formato data americano

    fratac ha scritto:


    Mi sto perdendo. Dici di avere un testo breve, però alleghi l immagine di un un'inserimento data, che non funziona con le text box collegate ad un formato testo. Il codice che hai postato non inverte niente, ma prende solo i valori.
    Si, prende solo i valori e nel mio caso va bene ugualmente. Quello che mi interessava era che i numeri, alla fine dovevano restituirei valori correnti nello ordine di inserimento (corrispondenti alla data che purtroppo è preimpostata con testo breve). L'istruzione lo fa e consente di cambiare il contenuto del campo della tabella, lasciandolo nell'ordine preimpostato.

    fratac ha scritto:


    con che office è stato creato il database?
    Il database è con estensione .mdb quindi capisci bene che si tratta di una versione datata, probabilmente mantenuta per essere compatibili con altre precedenti banche dati.

    fratac ha scritto:


    non hai una conoscenza base di access.
    Quando parlo di formattazione, non intendo il formato.
    Il formato è il tipo di dato (testo, long, integer..) la formattazione è invece la modalità di inserimento che si costruisce su una text box, in modo che l utente inserisca i dati in un determinato formato.
    Confermo, anzi sapresti suggerire un testo dove apprendere più approfonditamente le nozioni base di access?
  • Re: Ingannare access bypassando formato data americano

    Mdb? Azz! Stiamo parlando del 1997- 2000.
    Immaginavo. Infatti i problemi con le date venivano affrontati in questo modo in quel periodo.
    Comunque la compatibilità mdb si ha fino ad office 2007.
    Ed office 2007 è già praticamente simili a quelli attuali.
    Forse è il caso che dopo 25 anni, passiate a qualcosa di più moderno. Tanto la runtime di access è gratuita, e ci sono molti altri strumenti di importazione che evitano tutte ste manfrine.
  • Re: Ingannare access bypassando formato data americano

    fratac ha scritto:


    Forse è il caso che dopo 25 anni, passiate a qualcosa di più moderno. Tanto la runtime di access è gratuita, e ci sono molti altri strumenti di importazione che evitano tutte ste manfrine.
    Magari! Come ti dicevo sono solo un semplice utilizzatore, che cerca anzi di creare qualcosa di utile al collettivo che lavora con questo software. Devo dire che questo software comunque nel complesso è davvero molto articolato e ben fatto, solo che ovviamente non può prevedere ogni cosa e quindi, quando possibile mi dedico a piccole migliorie e dopo averle testate le mett a disposizione degli altri utenti.

    Comunque, tornando al mio obiettivo, nel cercare di ottimizzare il risultato, stavo cercando di creare una mini form per immettere in tre combobox (mioAnno, MioMese; mioGiorno) i tre differenti valori da combinare nella data che mi serve. Però mi sono perso visto che l'origine riga del campo Miogiorno , deve variare il numero massimo di giorni, a seconda del mese o dell'eventuale anno bisestile. Sembrava facile, ma evidentemente per me non lo è.
    Suggerimenti?
  • Re: Ingannare access bypassando formato data americano

    Ecco, questo è piu impegnativo
    Personalmente te lo sconsiglio, primo perché è più veloce l immissione manuale, secondo perché occorre una buona conoscenza di vba, terzo perché devi conoscere tutte le problematiche con le date. Sul forum e su internet trovi molto materiale al riguardo. Ti conviene fare una ricerca. Più veloce rispetto a spiegarlo da zero su un forum.
    Se poi incontri un problema, siamo sempre disponibili, ma un minimo di base sull argomento la devi avere.
    Ora però mi sorge un dubbio. Se un un'utente , nel "tuo" database dovesse inserire 30 febbraio. Cosa succede?
  • Re: Ingannare access bypassando formato data americano

    fratac ha scritto:


    Se un un'utente , nel "tuo" database dovesse inserire 30 febbraio. Cosa succede?
    é quello che devo evitare assolutamente. Ho trovato un date picker che fa al caso mi, è settato con il sistema americano ma sto vedendo di settarlo in formato europeo. Quasi tutto semplice, devo capire se mi conviene meno spostare l'incolonnamento delle caselle che riportano i giorni del mese, rispetto all'ordine dei giorni della settimana, in questo mmento ancora organizzati cominciando da Domenica a Sabato e non dal Lunedì alla Domenica. Ci provo, ma credo e spero di non rinunciare.

    Rimane comunque un ultimo tassello: utilizzare questa form sia per il campi DataRilascio, sia per il campo DataScadenza; per ognuno di loro, all'evento click faccio aprire la mia form datepicker quindi terminato l'inserimento, in forza di quale istruzione il risultato ottenuto con questa form viene copiato nell'uno o nell'altro campo? Non vorrei aggiungere due datepicker , vorrei utilizzare solo questa fom per le due possibilità, alternate grazie ad una istruzione VBA.

    Grazie per l'attenzione e per il tempo dedicato
  • Re: Ingannare access bypassando formato data americano

    Tutte domande a cui non so rispondere, perché non so quale oggetto stai utilizzando.
    Occhio però ad utilizzare oggetti non di access, perché devono essere installati anche nei sistemi operativi degli altri pc che usano il database, altrimenti non funzionano.
    Rischi che funzionano sul tuo pc, ma poi, per vari motivi non li puoi installare sugli altri pc.
  • Re: Ingannare access bypassando formato data americano

    fratac ha scritto:


    Mdb? Azz! Stiamo parlando del 1997- 2000
    ...
    Comunque la compatibilità mdb si ha fino ad office 2007.
    Il formato mdb esiste dalla nascita di Access (o almeno dalla versione 2.0, la prima che ho visto in azione) ed è presente anche oggi. Ho file mdb creati con la versione 365 che vanno senza problemi, anche con il runtime (il motivo per cui lo faccio poi è che sono strano io)
    Il formato mdb possiamo dividerlo in 3 grandi sottocategorie:
    - Access97
    - Access2000
    - Access2002/XP - 2003
    (ho intenzionalmente lasciato fuori il 95, ammesso che sia esistito, e 2.0)
    Access365 non sa aprire i file mdb in formato A97, raramente storce il naso per il 2000, non batte ciglio per A2002-2003.
    La schermata di salvataggio "Salva con nome" di A365 riporta, tra le altre, "Database di Access 2000 (*.mdb)" e "Database di Access 2002/2003 (*.mdb)" e permette di creare che file mde.
  • Re: Ingannare access bypassando formato data americano

    calascibetta ha scritto:


    Ho trovato un date picker che fa al caso mi, è settato con il sistema americano ma sto vedendo di settarlo in formato europeo. Quasi tutto semplice, devo capire se mi conviene meno spostare l'incolonnamento delle caselle che riportano i giorni del mese, rispetto all'ordine dei giorni della settimana, in questo momento ancora organizzati cominciando da Domenica a Sabato e non dal Lunedì alla Domenica. Ci provo, ma credo e spero di non rinunciare.
    Nonostante la mia estesa ignoranza del Vba e di Access, sono riuscito ad ottenere un discreto risultato.

    Volevo allegare uno stralcio del Database con la maschera m_AU e la form DatePicker file per gli eventuali suggerimenti che mi darete per correggere i seguenti problemi che riscontro:
    • un bug che non capisco bene perchè si verifichi (utilizzando i pulsanti avanti e indietro , mese o anno, sembra funzionare, ma ogni tanto, ripetendo questi comandi, il VBA va in Debug)
    • Ho previsto una MsgBOx con pulsanti VbYesNO, ma quando è aperta, il comando connesso al pulsante non opera su altre form
    • Rendere versatile la form "Scelta Data (Formato AAAA/MMGG" per l'immissione di diversi campi, cioè in base al campo scelto nella form m_AU per la modifica, infatti ci sono ben 4 campi con il numeri ordinati per essere letti come una data (DataRilasci, DataScadenza; DataSospensione e DataComunicazFineAttivita)
    per meglio individuare gli errori che posso aver creato al tool , nello stralcio del file che ho preparato ho inserito il datePicker che ho modificato e quello non modificato

    Ho provato ad inserire il file zippato in corrispondenza alla voce "allegati" ma non ci riesco, sapete suggerirmi come inserirlo e metterlo a Vs disposizione?

    Grazie
  • Re: Ingannare access bypassando formato data americano

    Forse per sicurezza, il forum non fa allegare file zip.
    Perché vuoi allegare uno zip?
    Ora perche la data è diventata aaaammgg? Non era in formato americano?
    Inoltre, visto che non si tratta di un singolo campo, è inutile continuare su questa strada.
    Il database deve essere modificato.
    Inoltre, non è un rimprovero, ma solo una constatazione del 99 percento dei post che arrivano sul forum.
    Perché prendete degli impegni, non conoscrndo minimamente lo strumento?
    Access, non è excel, ed è uno strumento molto difficile da usare se non si hanno le minime conoscenze di come si costruisce un database e di come si programma.
    Ed andare avanti a tentoni, non porta da nessuna parte.
  • Re: Ingannare access bypassando formato data americano

    fratac ha scritto:


    Forse per sicurezza, il forum non fa allegare file zip.
    Perché vuoi allegare uno zip?
    Ora perche la data è diventata aaaammgg? Non era in formato americano?
    Inoltre, visto che non si tratta di un singolo campo, è inutile continuare su questa strada.
    Il database deve essere modificato.
    Inoltre, non è un rimprovero, ma solo una constatazione del 99 percento dei post che arrivano sul forum.
    Perché prendete degli impegni, non conoscrndo minimamente lo strumento?
    Access, non è excel, ed è uno strumento molto difficile da usare se non si hanno le minime conoscenze di come si costruisce un database e di come si programma.
    Ed andare avanti a tentoni, non porta da nessuna parte.
    in formato mdb non passa ugualmente; gran cantonata, aaaammgg ricordavo fosse lo standard americano (effettivamente quello degli Stati Uniti e' mese / giorno / anno); per quanto riguarda le modifiche che apporto con access, tutti gli sforzi fatti per apportare mie modifiche, li ho fatti volentieri per implementare funzioni altrimenti mai aggiunte. Tra l'altro mi ha consentito di capire meglio come si sviluppa il database su cui lavoro ( che si articola con almeno una trentina di diverse tabelle , numerosissime queries, maschere a schede/pagine report e molto altro ancora) e rispetto ad altri utenti del software mi sono fatto una discreta idea di come interrogarlo. Poi mi da soddisfazione riuscire personalmente ad superare i miei limiti creando qualcosa che può tornare utile a me ed agli altri. Insomma Capisco la tua considerazione e che non intendi rimproverare nessuno, ma sbagliando si impara e perseverando si può anche riuscire, arrendersi in partenza significa avers sicuramente perso le proprie battaglie.
  • Re: Ingannare access bypassando formato data americano

    Certo. Condivido tutto il tuo discorso. Tranne quando si mettono le mani su cose realizzate da altri e quando sono operative, rischiando di compromettere seriamente il lavoro. Già un professionista deve studiare a fondo un programma prima di metterci le mani sopratutto per capire la logica con cui è stato realizzato, immagina chi è completamente digiuno dell argomento.
    Trattandosi di un lavoro articolato, non penso che, chi l abbia realizzato fosse stato un incompetente e capisco anche perché abbia fatto delle scelte del genere. Con i vecchi mdb, la data era un problema diffuso. Ma oggi come oggi, certi scogli, sopratutto con le date, sono stati superati, oppure magari, studiando la struttura del database, ci potrebbero essere soluzioni già realizzate o previste dall inizio, ma che non conoscendo l argomento, un neofita nemmeno considera o riconosce.
    A mio avviso, 5 minuti di un professionista risolverebbero il tutto.
    Ho come l impressione che si stia generando un frankestein, da cui poi sarà sempre più difficile raccapezzarci qualcosa.
    Se il database è un mdb e gestisce le date come caselle di testo, va aggiornato nella struttura. Oppure ci deve mettere le mani una persona che sa come fare.
    Gli esperimenti e gli errori si fanno con i propri progetti, non con quelli del lavoro.
    Inoltre, se crei casini, poi la responsabilità ricade su di te.
    Rovinare un database e un intero lavoro è un attimo.
    un bug che non capisco bene perchè si verifichi (utilizzando i pulsanti avanti e indietro , mese o anno, sembra funzionare, ma ogni tanto, ripetendo questi comandi, il VBA va in Debug)Ho previsto una MsgBOx con pulsanti VbYesNO, ma quando è aperta, il comando connesso al pulsante non opera su altre formRendere versatile la form "Scelta Data (Formato AAAA/MMGG" per l'immissione di diversi campi, cioè in base al campo scelto nella form m_AU per la modifica, infatti ci sono ben 4 campi con il numeri ordinati per essere letti come una data (DataRilasci, DataScadenza; DataSospensione e DataComunicazFineAttivita)
    Tornando a noi. Di quello che hai detto non si capisce niente.
    1 Che controlo usi? Il vecchio datepicker? Che già faceva pena 20 anni fa e che non usava nessuno?
    2 Che dovrebbe fare questa message box?
    3 Ma alla fine che cosa vuoi realizzare?
    4 che versione office stai usando?
  • Re: Ingannare access bypassando formato data americano

    fratac ha scritto:



    1 Che controlo usi? Il vecchio datapeeker?
    2 Che dovrebbe fare questa message box?
    3 Ma alla fine che cosa vuoi realizzare?
    4 che versione office stai usando?
    1) Un datakeeper di maggio 2007 scritto da Gary Wachs
    2) la message box informa l'utente che ha appena modificato la data nel campo della maschera m_AU, chiedendo di confermare, se Yes allora chiudi la mia form di Scelta data e chiudi msgbox; se No allora il Campo della mia maschera m_AU diventa uguale ad un testo già memorizzato inizialmente in un controllo della maschera di scelta data, quindi chiude la mia form di Scelta data e subito dopo msgbox;
    3) mie maschere di facilities per inserire dati che diversamente dovrei trattare direttamente nelle tabelle (ben ricche di colonne e di dati organizzati con codici) o utilizzare maschere che le ricalcano. In tal senso ti chiarisco che ogni utente lavora con una copia del "sotware" modificabile, di cui l'originale resta sempre disponibile . Pertanto, se non riesco o se creo problemi alla mia copia, mi basta sostituirla. A lavoro finito invio al gruppo la copia del mio file software con le mie modifiche, Questo mi consente di mostrare le mie idee per migliorare il lavoro che svolgiamo. Il Gruppo usa per prova questa nuova versione del software e vede di testarne il funzionamento. Se ritenute utili al collettivo, qualcuno di quelli che ha programmato il software, ne migliorerà le istruzioni in VBA.
    4) nel mio PC la versione 2010 32 bit, nel notebook di lavoro la versione 2013 32 bit, nel PC fisso di lavoro la versione 365 64 bit
  • Re: Ingannare access bypassando formato data americano

    nel mio PC la versione 2010 32 bit, nel notebook di lavoro la versione 2013 32 bit, nel PC fisso di lavoro la versione 365 64 bit
    Mi spieghi come fai ad aprire un mdb con queste versioni di access?

    Ma se poi quello che fai dovrà essere corretto da chi ha realizzato il database, perché non fa direttamente le modifiche?
  • Re: Ingannare access bypassando formato data americano

    calascibetta ha scritto:


    Ho provato ad inserire il file zippato in corrispondenza alla voce "allegati" ma non ci riesco, sapete suggerirmi come inserirlo e metterlo a Vs disposizione?
    Devi appoggiarti ad un host esterno (Onedrive, GoogleDrive, Dropbox, hai l'imbarazzo della scelta). Nota personale: non scarico nulla che abbia bisogno di registrazione.

    fratac ha scritto:


    nel mio PC la versione 2010 32 bit, nel notebook di lavoro la versione 2013 32 bit, nel PC fisso di lavoro la versione 365 64 bit
    Mi spieghi come fai ad aprire un mdb con queste versioni di access?
    Rimando al mio
    @tutti
    Nota (molto) bene: sto facendo una fatica terribile a seguire il thread, gli interventi sono prolissi e [I]a mio avviso a volte pure sbagliati. Ragazzi, si tratta di salvare una data in formato stringa AAAAMMGG, servono davvero quasi 30 post? (due dei quali miei per... tenere il thread in carreggiata)
  • Re: Ingannare access bypassando formato data americano

    Nota (molto) bene: sto facendo una fatica terribile a seguire il thread, gli interventi sono prolissi e a mio avviso a volte pure sbagliati. Ragazzi, si tratta di salvare una data in formato stringa AAAAMMGG, servono davvero quasi 30 post? (due dei quali miei per... tenere il thread in carreggiata)
    In realtà nel frattempo ha chiesto anche altre cose ed ogni volta bisogna farsi ripetere le cose, perché in ogni intervento fa delle affermazioni fuorvianti, perché non conosce l abc di access, (e mi viene il sospetto invece che lo stia facendo di proposito) come ad esempio parlava di data breve, mentre era una textbox con formato testo breve e dopo 30 post e 4 giorni di discussione, si scopre che ha confuso il formato della data, che non è aaaammgg ( per lui formato americano) mentre gli serve mmggaaa. Per poi scoprire che apre gli mdb, con versioni di access che non sono in grado di aprirli, ma solo di crearli. Se avesse fatto una minima prova, si sarebbe accorto immediatamente dell errore della data.
    Comunque hai ragione. Sta storia è andata anche troppo le lunghe.
Devi accedere o registrarti per scrivere nel forum
31 risposte