Thread View: pl.comp.lang.delphi.bazy-danych
7 messages
7 total messages
Started by Krzysztof Szyszka
Fri, 22 Apr 2016 16:26
ANN: X-DBData Components 1.7 ze wsparciem dla RAD Studio 10.1 Berlin!
Author: Krzysztof Szyszka
Date: Fri, 22 Apr 2016 16:26
Date: Fri, 22 Apr 2016 16:26
76 lines
5060 bytes
5060 bytes
Witam, miło mi poinformować, że ukazała się nowa wersja pakietu X-DBData Components 1.7! Co nowego w X-DBData Components 1.7 ? ================================== - Nowe pakiety dla Delphi/C++Builder 10.1 Berlin Win32/Win64!!! Co nowego w X-DBData Components 1.6 ? ================================== - Nowa klasa TXDBFieldList zastępuje (zbyt wolną) klasę TFieldList (RAD >= 2009) - Nowa właściwość TXDBDataSet.InternalDataProvider typu Boolean - Poprawiono: TXDBData.AddAllFields nie uwzględniało właściwości DefaultWidth - Poprawiono: TXDBData.ClearIndexFields po wykonaniu Destroy powodowało błąd - Poprawiono: TXDBData.FieldListChanged nie uwzględniało zmian w child fields - Poprawiono: Wyjątek "Icon image is not valid" dla pustego obrazka w TIcon - Nowe X-DBData Demo 10 - Run-time using examples - owe X-DBData Demo 11 - LocalSQL using examples (RAD >= XE5) Co to jest X-DBData Components ? ============================ Pakiet X-DBData Components został stworzony do bezpośredniego używania dowolnych indeksowanych struktur danych takich jak listy, tablice, kolekcje z komponentami bazodanowymi typu TDBEdit, TDBComboBox, TDBNavigator, a w szczególności z naszym komponentem TXDBGrid. Pakiet zawiera zestaw specjalnych data setów i data providerów pozwalających korzystać z dowolnych klasycznych i generycznych struktur danych tak samo jak z tabel bazodanowych. Komponenty zawarte z tym pakiecie pozwalają korzystać z: array of TObject, TList of TObject, TObjectList, TStringList, TWideStringList, TCollection, TArray<T: class>, TList<T: class>, TObjectList<T: class> i klas potomnych. Korzystając z data providerów można również obsłużyć dowolne indeksowane właściwości takie jak Fields, Controls, Components, Pages, Buttons, Forms, itp. Każdy z data setów z pakietu wspiera wszystkie standardowe operacje: read, write, insert, edit, delete, locate, lookup, filter, master-detail oraz DataSetField. Wspierane są również bookmarki, blob stream i nested data set. Możesz samodzielnie definiować FieldDefs (komponent TXDBData) lub utworzyć przy użyciu data providera domyślne FieldDefs bazujące na właściwościach obiektu z sekcji published. Możesz również utworzyć pola persistent oraz definiować pola fkLookup i fkCalculated dowolnego typu. W czasie projektowania masz również dostępny standardowy Fields Editor. Podstawowe data providery obsługują właściwości z sekcji published następujących typów: Boolean, Enum, Byte, Word, LongWord, ShortInt, SmallInt, Integer, LargeInt, Single, Double, Extended, Currency, TDate, TTime, TDateTime, ShortString, AnsiString, WideString, UnicodeString, Interface, Variant. Podstawowe data providery tworzą automatycznie pola ftADT dla właściwości wywodzących się z klasy TPersistent takich jak Font, Margins, Constraints, Touch, itp. Dla właściwości wywodzących się z klasy TGraphic tworzone jest pole typu ftGraphic, a dla właściwości wywodzących się z TCollection, TStrings, TWideStrings automatycznie tworzy się pole typu ftDataSet. Pole ftDataSet można obsłużyć przy użyciu odrębnego nested data set. Możesz również łatwo definiować nowe data sety i nowe data providery dla swoich własnych klas. W szczególności, możesz w prosty sposób definiować generyczne data sety bazujące na twoich klasach: var CompanyTable: TXDBTable<TCompany>; Pakiet zawiera komponenty przeznaczone dla: - Delphi 5, 6, 7, 2005, 2006, 2007, 2009, 2010, XE, XE2, XE3, XE4, XE5, XE6, XE7, XE8, 10, 10.1 - C++Builder 5, 6, 2006, 2007, 2009, 2010, XE, XE2, XE3, XE4, XE5, XE6, XE7, XE8, 10, 10.1 Zapraszam do odwiedzenia serwisu na stronie http://www.x-files.pl/pl/components/xdbdata.html oraz do pobrania wersji testowej ze strony http://www.x-files.pl/pl/download/xdbdata.html pozdrowienia, Krzysztof Szyszka, X-Files Software Developer of X-DBData Components Embarcadero Technology Partner http://www.x-files.pl/pl/
Re: ANN: X-DBData Components 1.7 ze wsparciem dla RAD Studio 10.1 Berlin!
Author: szemrany
Date: Fri, 22 Apr 2016 20:37
Date: Fri, 22 Apr 2016 20:37
13 lines
1461 bytes
1461 bytes
On Fri, 22 Apr 2016 18:26:03 +0200, Krzysztof Szyszka wrote: > Komponenty zawarte z tym pakiecie pozwalają korzystać z: array of TObject, > TList of TObject, TObjectList, TStringList, TWideStringList, TCollection, > TArray<T: class>, TList<T: class>, TObjectList<T: class> i klas potomnych. A wspiera kolekcje Springa? -- howgh szemrany "Zrozumienie umożliwia zastąpienie nieracjonalnych działań lub bezradności przez działania racjonalne." M.Mazur, ojciec polskiej szkoły cybernetyki
Re: X-DBData Components 1.7 ze wsparciem dla RAD Studio 10.1 Berlin!
Author: Krzysztof Szyszka
Date: Sat, 23 Apr 2016 07:23
Date: Sat, 23 Apr 2016 07:23
26 lines
2305 bytes
2305 bytes
> > Komponenty zawarte z tym pakiecie pozwalają korzystać z: array of TObject, > > TList of TObject, TObjectList, TStringList, TWideStringList, TCollection, > > TArray<T: class>, TList<T: class>, TObjectList<T: class> i klas potomnych. > > A wspiera kolekcje Springa? Gotowych klas korzystających ze Springa nie ma w pakiecie, bo nie każdy z niego korzysta, a wtedy nie mógłby zainstalować tego pakietu w Delphi, ale pakiet wspiera wszystko, do czego potrafisz napisać prostego Providera. W przypadku kolekcji Springa nawet nazwy wielu klas są identyczne jak w Generics.Collections, więc wystarczy powielić gotowego Providera i użyć w nim analogicznych klas z modułu Spring.Collections.Lists. Przykładowo, dla TList<T> ze Spring.Collections.Lists wystarczy zdefiniować kilka prostych metod w nowej klasie TXDBSpringListProvider<T> utworzonej analogicznie do dostarczanej w pakiecie gotowej klasy TXDBListProvider<T>. -- pozdrowienia Krzysztof Szyszka, X-Files Software Developer of X-DBGrid Component Embarcadero Technology Partner http://www.x-files.pl/ Join to "Delphi X-DBGrid Component Community" https://plus.google.com/#communities/100842098152269100547
Re: X-DBData Components 1.7 ze wsparciem dla RAD Studio 10.1 Berlin!
Author: szemrany
Date: Sat, 23 Apr 2016 08:18
Date: Sat, 23 Apr 2016 08:18
23 lines
2077 bytes
2077 bytes
On Sat, 23 Apr 2016 09:23:45 +0200, Krzysztof Szyszka wrote: >> A wspiera kolekcje Springa? > > Gotowych klas korzystających ze Springa nie ma w pakiecie, bo nie każdy z niego korzysta, > a wtedy nie mógłby zainstalować tego pakietu w Delphi, ale pakiet wspiera wszystko, do czego > potrafisz napisać prostego Providera. > > W przypadku kolekcji Springa nawet nazwy wielu klas są identyczne jak w Generics.Collections, > więc wystarczy powielić gotowego Providera i użyć w nim analogicznych klas z modułu > Spring.Collections.Lists. > > Przykładowo, dla TList<T> ze Spring.Collections.Lists wystarczy zdefiniować kilka prostych > metod w nowej klasie TXDBSpringListProvider<T> utworzonej analogicznie do dostarczanej > w pakiecie gotowej klasy TXDBListProvider<T>. W Springu korzysta się z dostępu interfejsowego, czy to zmienia cokolwiek? -- howgh szemrany "Zrozumienie umożliwia zastąpienie nieracjonalnych działań lub bezradności przez działania racjonalne." M.Mazur, ojciec polskiej szkoły cybernetyki
Re: X-DBData Components 1.7 ze wsparciem dla RAD Studio 10.1 Berlin!
Author: Krzysztof Szyszka
Date: Sat, 23 Apr 2016 09:37
Date: Sat, 23 Apr 2016 09:37
29 lines
2631 bytes
2631 bytes
> >> A wspiera kolekcje Springa? > > > > Gotowych klas korzystających ze Springa nie ma w pakiecie, bo nie każdy z niego korzysta, > > a wtedy nie mógłby zainstalować tego pakietu w Delphi, ale pakiet wspiera wszystko, do czego > > potrafisz napisać prostego Providera. > > > > W przypadku kolekcji Springa nawet nazwy wielu klas są identyczne jak w Generics.Collections, > > więc wystarczy powielić gotowego Providera i użyć w nim analogicznych klas z modułu > > Spring.Collections.Lists. > > > > Przykładowo, dla TList<T> ze Spring.Collections.Lists wystarczy zdefiniować kilka prostych > > metod w nowej klasie TXDBSpringListProvider<T> utworzonej analogicznie do dostarczanej > > w pakiecie gotowej klasy TXDBListProvider<T>. > > W Springu korzysta się z dostępu interfejsowego, czy to zmienia cokolwiek? TList<T>, TObjectList<T>, itd. to są zwykłe klasy, a że implementują dodatkowe interfejsy, to ma znaczenie jedynie przy dostępie z Twojego kodu. TXDBDataSet i pochodne operują bezpośrednio na instancjach tych klas. Jeśli elementami kolekcji byłyby intefejsy, to jedynie musiałbyś to uwzględnić przy pisaniu Providera (np. w InsertItem/DeleteItem). -- pozdrowienia Krzysztof Szyszka, X-Files Software Developer of X-DBGrid Component Embarcadero Technology Partner http://www.x-files.pl/ Join to "Delphi X-DBGrid Component Community" https://plus.google.com/#communities/100842098152269100547
Re: X-DBData Components 1.7 ze wsparciem dla RAD Studio 10.1 Berlin!
Author: szemrany
Date: Sat, 23 Apr 2016 09:54
Date: Sat, 23 Apr 2016 09:54
40 lines
3101 bytes
3101 bytes
On Sat, 23 Apr 2016 11:37:47 +0200, Krzysztof Szyszka wrote: >>>> A wspiera kolekcje Springa? >>> >>> Gotowych klas korzystających ze Springa nie ma w pakiecie, bo nie każdy z niego korzysta, >>> a wtedy nie mógłby zainstalować tego pakietu w Delphi, ale pakiet wspiera wszystko, do czego >>> potrafisz napisać prostego Providera. >>> >>> W przypadku kolekcji Springa nawet nazwy wielu klas są identyczne jak w Generics.Collections, >>> więc wystarczy powielić gotowego Providera i użyć w nim analogicznych klas z modułu >>> Spring.Collections.Lists. >>> >>> Przykładowo, dla TList<T> ze Spring.Collections.Lists wystarczy zdefiniować kilka prostych >>> metod w nowej klasie TXDBSpringListProvider<T> utworzonej analogicznie do dostarczanej >>> w pakiecie gotowej klasy TXDBListProvider<T>. >> >> W Springu korzysta się z dostępu interfejsowego, czy to zmienia cokolwiek? > > TList<T>, TObjectList<T>, itd. to są zwykłe klasy, a że implementują dodatkowe interfejsy, > to ma znaczenie jedynie przy dostępie z Twojego kodu. Chodziło mi o to, że mechanizmy Springowe wymuszają używania dostępu interfejsowego, zatem operowanie we własnym kodzie obiektami jest w praktyce niemożliwe. > TXDBDataSet i pochodne operują > bezpośrednio na instancjach tych klas. Jeśli elementami kolekcji byłyby intefejsy, > to jedynie musiałbyś to uwzględnić przy pisaniu Providera (np. w InsertItem/DeleteItem). I o to mi chodziło. Dzięki za odpowiedź. ps. Z "What's new" wynika, że w Berlinie zablokowano dostęp do sekcji private przez helpery, kiedyś była tu o tym dyskusja w której brałeś udział, możesz to potwierdzić? -- howgh szemrany "Zrozumienie umożliwia zastąpienie nieracjonalnych działań lub bezradności przez działania racjonalne." M.Mazur, ojciec polskiej szkoły cybernetyki
Re: X-DBData Components 1.7 ze wsparciem dla RAD Studio 10.1 Berlin!
Author: Krzysztof Szyszka
Date: Sat, 23 Apr 2016 10:16
Date: Sat, 23 Apr 2016 10:16
16 lines
1939 bytes
1939 bytes
> ps. Z "What's new" wynika, że w Berlinie zablokowano dostęp do sekcji > private przez helpery, kiedyś była tu o tym dyskusja w której brałeś > udział, możesz to potwierdzić? Tak. Kiedyś byłem zdziwiony, że użycie Self.FCosTam w class helperze pozwala na dostęp do FCosTam z sekcji private i uważałem to za błąd kompilatora. Jak widać po latach bug został poprawiony, choć mało kto się z tego cieszy ;-) -- pozdrowienia Krzysztof Szyszka, X-Files Software Developer of X-DBGrid Component Embarcadero Technology Partner http://www.x-files.pl/ Join to "Delphi X-DBGrid Component Community" https://plus.google.com/#communities/100842098152269100547
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads