Formatowanie pola daty w dataset.

0

Witam,
Mam dwa pola daty w bazie przy czym jedno to data a drugie godzina.
Pole daty wyświetlane jest prawidłowo w gridzie. Tak jak podaję czyli "yyyy-mm-dd" natomiast pole godziny podaję w formacie "hh:mm" natomiast, grid pokazuje datę (1899-xx-xx) i godzinę czyli ogólny format "yyyy-mm-dd hhss". W raporcie też pojawia się takka mega długa data. Natomiast w bazie jest tylko godzina.
W ten sposób uzupełniam grida:

        public void getDataConnection(DataSet dSet,OleDbDataAdapter dAdapter, string query, string tabela, DataGridView grid)
        {
            string connString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Dane\ewidencja.mdb";
            OleDbConnection conn = new OleDbConnection(connString);
            dAdapter = new OleDbDataAdapter(query, conn);
            dSet = new DataSet();
            dAdapter.Fill(dSet, tabela);
            grid.DataSource = dSet.Tables[tabela];            
        }

To rozwiązuje formatowanie, ale co z dataset dane pobierane są z całą datą.

this.tempGV.Columns[5].DefaultCellStyle.Format = "hh:mm";
0

Po prostu - masz typ danych, DateTime, ktory trzyma date i godzine. Nie wyczarujesz nic, zeby nagle zaczal on trzymac tylko godzine. Musialbys przejsc z kolumny (w dataset/datatble) typu datetime na cos innego. Nie sadze zeby to bylo potrzebne. po prostu znajdz sposob, zeby w Twoich raportach narzucic formatowanie pola, w podobny sposob jak zrobiles na gridzie. Na pewno sie jakos da - formatowanie danych to jedna z podstaowych funkcji modulow raportowania

edit: no wlasnie.. odnosnie topiku watku: nie ma czegos takiego. DataSet/DataTable to tylko opakowania na dane. Nie formatuje sie "daty w dataset", to sformulowanie jst bez sensu. W DataSet/table jest po po prostu trzymana wartosc oznaczajaca date. Formatowaniem zajmuje sie to-co-co-czyta-z-DS/DT-i-Ci-to-wyswietla

1 użytkowników online, w tym zalogowanych: 0, gości: 1