Sviluppare funzionalita su Microsoft Office con VBA ACCESS: Campo data in formato numerico da tabella su AS400

Login Registrati
Stai vedendo 4 articoli - dal 1 a 4 (di 4 totali)
  • Autore
    Articoli
  • #35501 Score: 0 | Risposta

    Aldo Ercolini
    Partecipante
      19 pts

      Devo popolare con una query di accodamento una tabella su Access con dei dati provenienti da una tabella su AS400.

      Il campo Data sulla tabella su AS400 e' numerico (Es.:20221108) e devo convertirlo nel formato "Data in cifre" (08/11/2022).

      Ho ricostruito la data in ggmmaaaa, sempre numerica, ma quando lancio la query dice che non puo' aggiornare il campo per errata conversione dei dati, infatti la funzione IsDate dice che non e' una stringa trasformabile in data. Chiaramente anche CDate non funziona.

      Qualcuno sa come posso fare?

      Grazie.

      #35502 Score: 1 | Risposta

      vecchio frac
      Senior Moderator
        272 pts

        A me sembra un passaggio in più quello di trasformare un numero in altro numero per poi convertirlo in formato data.
        Io tenterei questa strada:
        - prendo il dato numerico,
        - trasformo la stringa in formato data,
        - lo passo alla SELECT del motore Jet.

        SELECT CDate(Right(field1,2) & "/" & Mid(field1,5,2) & "/" & Left(field1,4)) As date1 FROM table 

        dove chiaramente field1 è il campo che contiene il numero che rappresenta la data e table la tabella da cui si preleva il dato.

        Purtroppo vado a tentativi dal momento che non conosco la struttura dati del db né la query di selezione. Presumo comunque che da Access ti stai interfacciando al database mediante ODBC.

        #35505 Score: 0 | Risposta

        Aldo Ercolini
        Partecipante
          19 pts

          Come al solito mi perdo nelle c.....e  

          Questo e' come avevo scritto Cdate: CDate(Right([ADEFINTEML_STPRATW0]![STP241];2) & Mid([ADEFINTEML_STPRATW0]![STP241];5;2) & Left([ADEFINTEML_STPRATW0]![STP241];4)) ........

          La vecchiaia avanza. Grazie Vecchio Frac.

          #35506 Score: 0 | Risposta

          vecchio frac
          Senior Moderator
            272 pts

            Mancavano gli slash! 😀 Non sai quante volte mi capita... queste piccole cose ti fanno diventare matto.

            Io pure ho una struttura dati che memorizza le date in quel formato (yyyymmdd) per praticità di ordinamento e ricerca, ma poi per visualizzare all'utente ho costruito una Function ToDate(string) che converte la stringa in ingresso formattandola nel modo desiderato e la restituisce al codice. In questo modo ovunque, anche all'interno delle SELECT, posso utilizzarla per avere una data dd/mm/yyyy (i puristi storceranno il naso perché rallenta... pazienza 🙂 )

          Login Registrati
          Stai vedendo 4 articoli - dal 1 a 4 (di 4 totali)
          Rispondi a: ACCESS: Campo data in formato numerico da tabella su AS400
          Gli allegati sono permessi solo ad utenti REGISTRATI
          Le tue informazioni: