W wersji 33.0.0 we wszystkich programach linii InsERT nexo udostępniliśmy w Laboratorium nową wersję "Biblioteki załączników". Z punktu widzenia użytkownika nowa Biblioteka zawiera niewielkie poprawki, jednak zaszły tam istotne zmiany w modelu danych i sferycznym API, dlatego bardzo zachęcam do zapoznania się z tymi zmianami, zwłaszcza wszystkich twórców rozwiązań własnych.
1. Co się zmieniło?
W starej wersji Biblioteki jeden załącznik był powiązany z dokładnie jednym obiektem w programie nexo. Jeśli użytkownik chciał powiązać ten załącznik z innym obiektem, to musiał go dodać drugi raz. To prowadziło do powstawania duplikatów, które niepotrzebnie zajmowały miejsce w bazie danych. Jeśli użytkownicy edytowali załączniki, to te duplikaty mogły się potem różnić, co było dodatkową niedogodnością.
W nowej wersji Biblioteki jeden załącznik może być powiązany z wieloma obiektami w programie i ma w bazie tylko jeden egzemplarz. Nie można dodać do Biblioteki załącznika o takiej samej nazwie, rozszerzeniu i zawartości. W widoku "Biblioteka załączników" można wylistować wszystkie obiekty podłączone do danego załącznika, a także odłączyć - niektóre z nich lub od razu wszystkie.
Na poziomie sferycznego API wprowadziliśmy następujace zmiany:
* dotychczasowe interfejsy związane z obsługą Biblioteki, IObiektBibliotekiDokumentow, IObiektyBibliotekiDokumentow oraz IObiektyBibliotekiDokumentowDane, zostały oznaczone jako Obsolete,
* udostępniliśmy nowy interfejs do obsługi Biblioteki, IBibliotekaZalacznikow, który na razie współpracuje z obiema wersjami Biblioteki.
2. Kiedy nowa Biblioteka będzie dostępna poza Laboratorium i co się stanie ze starą Biblioteką?
Planujemy, że w wersji 36.0.0 przeprowadzimy u wszystkich użytkowników automatyczną migrację na nową wersję Biblioteki. Opcja zmiany wersji Biblioteki zniknie z Laboratorium. Związane ze starą Biblioteką elementy API zostaną usunięte.
Być może nastąpi to później, ale na pewno nie wcześniej.
3. Jak włączyć nową Bibliotekę?
Aby włączyć nową Bibliotekę, należy wcisnąć Ctrl+Spacja+XX, zaakceptować regulamin Laboratorium i kliknąć "Włącz" w sekcji "Nowa biblioteka załączników". Następnie należy się przelogować lub uruchomić nexo ponownie. Przed włączeniem Biblioteki zalecamy zrobienie kopii zapasowej.
4. Mam rozwiązanie własne korzystające z Biblioteki. Co muszę zrobić?
W rozwiązaniach własnych w miejscach, gdzie używane są typy związane ze starą Biblioteką (takie jak IObiektBibliotekiDokumentow, IObiektyBibliotekiDokumentow, IObiektyBibliotekiDokumentowDane, ObiektBibliotekiDokumentow), należy zamiast nich użyć typu IBibliotekaZalacznikow i innych, takich jak IZalacznikWBibliotece czy IObiektPowiazanyZZalacznikiem.
Interfejs IBibliotekaZalacznikow współpracuje z obiema wersjami Biblioteki. To oznacza, że jeśli w danej bazie nie włączono jeszcze nowej Biblioteki, to rozwiązanie własne i tak może zostać zaktualizowane tak, żeby korzystać z nowego interfejsu. Po zaktualizowaniu rozwiązania własnego można włączyć nową Bibliotekę w Laboratorium albo poczekać na aktualizację nexo, która sama zmieni wersję Biblioteki. IBibliotekaZalacznikow wykryje tę zmianę i dostosuje do niej swoje działanie.
Przykłady użycia nowych interfejsów można znaleźć w pomocy do Sfery od wersji 33.0.1.