Skocz do zawartości
Forum użytkowników

Katarzyna Rozmarynowska

InsERT
  • Ilość treści

    70
  • Rejestracja

  • Wygrane dni

    2

Katarzyna Rozmarynowska wygrał w ostatnim dniu 30 sierpnia

Katarzyna Rozmarynowska ma najbardziej lubianą zawartość!

Reputacja

7 Neutral

O Katarzyna Rozmarynowska

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. Odpowiedź na pytanie 1: Tak, to pewnie program serwisowy. Blokada bazy jest "przypisana" do procesu. Więc jeśli proces 123 na komputerze X blokuje bazę, to tylko ten proces na tym komputerze ma do niej dostęp. Jeśli ten proces zostanie zakończony, to baza staje się dostępna dla innych procesów na tym komputerze (ale z innych komputerów ciągle nie można się łączyć). Pisząc "procesy" mam na myśli procesy związane z programami nexo, a nie dowolne. Odpowiedź na pytanie 2: Może być. Dla świętego spokoju lepiej go wyłączyć na czas aktualizacji. I. Gdy blokuje Pan bazę na jednym komputerze, użytkownicy na innych komputerach dostają informację o tym, że program zostanie zamknięty za pewien okres czasu. Jeśli nie potwierdzą tej informacji, to program się nie zamknie (bo nie chcemy, żeby użytkownik, który np. odszedł na chwilę od komputera, stracił niezapisaną pracę). Program musi być zamknięty, żeby nexo na pewno nie łączyło się z bazą. II. Gdyby ten komunikat zawierał numer procesu, to wszystko byłoby jasne - nie może Pan aktualizować bazy w procesie X, bo została zablokowana przez Pana w procesie Y. Jeśli chodzi o długi czas sprawdzania, czy ktoś jest połączony - tak naprawdę to odbywa się bardzo szybko, a te 20 minut to raczej czas tworzenia automatycznej kopii zapasowej przed aktualizacją. Sugeruje to rozmiar bazy. Możliwe, że w przyszłych wersjach będziemy sprawdzać połączenia przed wykonaniem kopii.
  2. Niestety, nie mamy w notesie kosza. Na razie też nie mamy w planach dodawania tam nowych funkcji. Gdyby jednak plany miały się zmienić, z pewnością uwzględnimy Pana sugestie.
  3. Mamy w planach umożliwienie podłączania jednego załącznika do wielu obiektów/dokumentów (bez duplikowania załącznika), w pakiecie z opcją wyświetlania listy obiektów, do których załączony jest wybrany plik. Wstępny termin to przyszły rok - i na tym etapie nie jestem w stanie podać nic bardziej konkretnego.
  4. Wygląda na to, że napisałam nieprawdę w moim poprzednim poście i jest dokładnie tak, jak Pan opisuje, tzn. Launcher nie znajduje scenariusza, jeśli nie podepnie się pakietu do bazy. Bardzo przepraszam za to nieporozumienie. Tak wygląda pakiet z rozszerzeniem własnym podpięty do bazy Demo_1: Pakiet MojeRozszerzenieEXE zawiera aplikację WpfApp1.exe, uruchamianą w scenariuszu WpfApp1. Uruchamiam InsLaunchera z parametrem Nexo/WpfApp1: Tak wygląda proces z moją aplikacją: Wpis w polu "Do produktu" ma znaczenie dla "długości życia" rozwiązania własnego. Jeśli poda tam Pan Nexo-26.2.1.3077, to rozwiązanie będzie działało tylko z bazami w wersji 26.2.1.3077, a po aktualizacji bazy do innej wersji zostanie odłączone. Jeśli nie poda Pan tam nic, to rozwiązanie, raz przypięte do bazy, będzie do niej przypięte już zawsze, tzn. będzie je można ręcznie odpiąć w programie serwisowym, ale nie odłączy się samo w trakcie aktualizacji. Jeśli chodzi o bazę InsERT_Launcher, to nie ma ona wersji i jest to zupełnie normalne.
  5. Czy przy pakowaniu rozwiązania podał Pan scenariusz uruchomienia? InsLauncher.exe uruchamiany jest z parametrami {Produkt}/{Scenariusz}, gdzie {Produkt} to nexo, a {Scenariusz} to w Pana przypadku "WPFApplication". Wobec tego przy pakowaniu rozwiązania własnego w programie serwisowym w zakładce "Uruchamianie" należy dodać do listy scenariusz o nazwie "WPFApplication" i podać, jaka aplikacja ma być uruchamiana w tym scenariuszu (np. "WPFApplication.exe"). Tak przygotowane rozwiązanie własne może Pan uruchomić teoretycznie na dowolnej bazie nexo i nie ma potrzeby dodawania pakietu z tym rozwiązaniem do listy pakietów składowych w wybranej bazie. Na takiej samej zasadzie nie trzeba tam nic dodawać, żeby np. na bazie z Subiektem uruchomić Gratyfikanta - wystarczy uruchomić scenariusz Nexo/Gratyfikant. Rozwiązanie własne trzeba dodać do listy pakietów składowych wtedy, gdy nie jest osobną aplikacją i jest uruchamiane w ramach jakiegoś istniejącego scenariusza. Na przykład: jeśli mam rozwiązanie własne "MojeRozszerzenie.dll" i chcę, żeby działało w bazie Demo_1, to pakuję je do mpkg (MojeRozszerzenieDLL-26.2.1.3077.mpkg), podpinam na liście pakietów składowych bazy Demo_1 i uruchamiam Nexo/Subiekt na bazie Demo_1. InsLauncher wczytuje wtedy wszystkie pakiety składowe bazy Demo_1, w tym zawartość mojego pakietu MojeRozszerzenieDLL-26.2.1.3077.mpkg. Jeśli natomiast mam osobną aplikację, "MojeRozwiązanie.exe", to też pakuję je do mpkg (MojeRozszerzenieEXE-26.2.1.3077.mpkg). Podaję scenariusz o nazwie "MojScenariusz", w którym uruchamiana jest aplikacja "MojeRozwiazanie.exe" i nie podłączając rozwiązania do bazy Demo_1, mogę je uruchomić InsLauncherem z parametrem Nexo/MojScenariusz. Tutaj przyznam, że chyba nie do końca rozumiem dokładnie Pana problem, ale chcę zauważyć, że wersja programu i wersja SDK użytego do stworzenia rozwiązania własnego muszą się zgadzać, więc możliwe, że musi Pan po prostu aktualizować rozwiązanie własne razem z nexo.
  6. Jest to niestety skutek uboczny synchronizacji między bazą a dyskiem (bo po otwarciu plik jest zapisywany na dysku). Nie ma na to żadnego obejścia. Poprawki można się spodziewać w jednej z przyszłych wersji, prawdopodobnie w pakiecie z innymi zmianami w bibliotece.
  7. Zamierzamy dodać taką opcję, ale nie jestem w stanie powiedzieć, kiedy to zrobimy. Obawiam się, że raczej nie w tym roku. Niestety, dokładnie tak jest. Naprawa tego błędu prawdopodobnie będzie robiona w pakiecie z otwieraniem obiektu docelowgo.
  8. A czy mógłby Pan jeszcze napisać, jakie dokładnie uprawnienia ma ten użytkownik?
  9. To w takim razie proszę zajrzeć do %localappdata%\InsERT\Logs\ i zobaczyć, czy zapisał się tam jakiś błąd (w pliku .xml). Bez szczegółowych informacji trudno powiedzieć, co się dzieje.
  10. Czy ten użytkownik ma przyznane uprawnienie "View server state"?
  11. Dziękuję za informacje. Naprawimy, jak tylko uda nam się to powtórzyć.
  12. Jeśli to jest Subiekt z Gratyfikantem (a nie Gratyfikant z Subiektem), to właściwa lista zapamiętanych zakładek powinna się pojawić po wykonaniu: SELECT * FROM ModelDanychContainer.StanyAplikacji WHERE Klucz = 'OpenServices.Subiekt'.
  13. To wygląda na błąd. Chciałabym napisać, że go poprawimy, ale na razie nie udało się go powtórzyć. Trochę pytań dodatkowych: - czy to są wszystkie raporty z tej bazy czy jakiś losowy podzbiór? - czy te raporty (włącznie z wybranym) są podpięte jako widoki w jakimś module? - co jest w historii zakładki po starcie programu? (Można to sprawdzić w bazie: SELECT * FROM ModelDanychContainer.StanyAplikacji WHERE Klucz = 'OpenServices.Gratyfikant')
  14. Mogę to opisać, ale chcę zastrzec, że zdecydowanie nie polecam kompaktowania bazy. Tak jak pisze pan Andrzej, ta operacja na ogół nie ma sensu, bo miejsce, które się zwolni przy kompaktowaniu, wkrótce zostanie i tak znowu zajęte, w miarę jak w bazie będzie przybywać danych. Istnieje natomiast pewne ryzyko, że kompaktowanie spowolni pracę bazy. W sumie więc nie warto tego robić dla chwilowego odzyskania kilku gigabajtów. Jeśli jednak chce Pan podjąć to ryzyko, oto instrukcja: w SQL Server Management Studio proszę wybrać bazę, kliknąć na niej prawym przyciskiem myszy i wybrać Tasks -> Shrink -> Database. Pokaże się okienko, w którym napisane będzie, ile wolnego miejsca jest w bazie. Żeby ją skompaktować, wystarczy kliknąć OK. Szczegóły w dokumentacji.
×