Thread View: pl.comp.lang.delphi.bazy-danych
7 messages
7 total messages
Started by "Krzysztof Szysz
Fri, 22 Apr 2016 18:26
ANN: X-DBData Components 1.7 ze wsparciem dla RAD Studio 10.1 Berlin!
Author: "Krzysztof Szysz
Date: Fri, 22 Apr 2016 18:26
Date: Fri, 22 Apr 2016 18:26
76 lines
4099 bytes
4099 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 22:37
Date: Fri, 22 Apr 2016 22:37
12 lines
506 bytes
506 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 Szysz
Date: Sat, 23 Apr 2016 09:23
Date: Sat, 23 Apr 2016 09:23
26 lines
1191 bytes
1191 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 10:18
Date: Sat, 23 Apr 2016 10:18
22 lines
1035 bytes
1035 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 Szysz
Date: Sat, 23 Apr 2016 11:37
Date: Sat, 23 Apr 2016 11:37
29 lines
1433 bytes
1433 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 11:54
Date: Sat, 23 Apr 2016 11:54
39 lines
1832 bytes
1832 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 Szysz
Date: Sat, 23 Apr 2016 12:16
Date: Sat, 23 Apr 2016 12:16
16 lines
676 bytes
676 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