Przejdź do treści

FAQ - na co zwrócić uwagę przy przejściu na Neosa 6.1

Panel Pakowania

W przypadku przejścia na Neosa 6.1 potrzebujemy zmodyfikowanego projektu TD z poprawkami z tematu PSU-1652, bez tych poprawek na wersji 6.1 przestaje działać logowanie w panelu pakowania. Jeśli chcemy ręcznie zmodyfikować projekt, to:

  1. Na formie BROWSE panelu pakowania, musimy odpiąć od kontrolki edit: _barcode dwa zagnieżdżone przyciski, następnie kasujemy kontrolkę edit: _barcode i w jej miejsce z listy dostępnych elementów wstawiamy kontrolkę SCANNERINPUT do której przypisujemy pole modelu danych _barcode. Jeśli standardowo nie mamy obsługiwać czytnika kodów kreskowych to w pliku TD.PANEL_PAKOWANIA.BROWSE.bform należy zmienić wartość parametru: <CLEARVALUEAFTERSENDING> dla kontrolki edit: _barcode na N.

  1. W obiekcie TD.PanelPakowania, w metodzie CofirmBarcode musimy ignorować puste wartości parametru _barcode. Tzn:
if (string.IsNullOrEmpty(_barcode)) 
{   
  return;
}

Podgląd plików PDF w kliencie WEB

Aby na wersjach Neosa od 6.1 do 6.1.8 podgląd plików PDF był dostępny to w pliku .smd w sekcji HTTPServer należy ustawić:

[HTTPServer]
ContentSecurityPolicy=yes
XFrameOptions=SAMEORIGIN

Nowy format plików i edycja kodu w Visual Studio Code

Od wersji Neos 6.1 możliwa jest edycja kodu C# metod interfejsowych i logiki biznesowej w zewnętrznym narzędziu, jakim jest Visual Studio Code. Edycja może odbywać się równolegle w VS jak i wewnętrznym edytorze Neos Experta, ponieważ zmiany zrobione w jednym narzędziu są automatycznie aktualizowane w drugim.

Uwaga!

Neos 6.1 wprowadza domyślne wartości dla wielu kluczy w plikach .bobj i .bform, co powoduje, że te klucze są usuwane z plików i pliki są znacznie mniejsze. Dzieje się to nawet dla formatu 1.0. Arkusz z domyślnymi wartościami

Aby móc edytować kod w VS, muszą być spełnione pewne warunki: - Musisz działać na Neosie w wersji 6.1 lub wyższej. Pliki źródłowe projektów, które chcesz edytować, muszą być na lokalnym komputerze (na tym, na którym będzie działać VS), a więc całe środowisko Neosa powinno działać lokalnie.

  • Projekt neosowy musi zostać skonwertowany do wersji v60. W przeciwnym razie działa jedynie debugowanie, ale nie można edytować kodu.

  • Należy zainstalować Visual Studio Code

  • Aby w VS Code działały zaawansowane mechanizmy wspierające edycję kodu (intellisense, skok do definicji, znalezienie listy odwołań, itp) zainstaluj .net SDK w wersji 6.0 lub wyższej. Aby sprawdzić jaką wersję .net posiadasz, z poziomu linii poleceń wpisz: dotnet --info. Instalator .net 6.0 SDK dla Windowsa 64-bit: Znajduje się tutaj, ogólny link do .net 6.0 znajduje się tutaj

  • Uruchomienie VS Code przez Neosa powoduje automatyczne doinstalowanie następujących rozszerzeń: "wsparcie dla języka C#", "Solution Explorer" (dodaje eksplorator solucji) Jeśli uruchamiasz VS Code ręcznie, to jednorazowo zainstaluj te rozszerzenia.

Konwersja wersji projektu

Aby dokonać konwersji wersji projektu, wejdź we właściwości projektu w Neos Expercie i w polu “Wersja projektu” wybierz 6.0, a następnie naciśnij “Zapisz”.

Uważaj, gdyż ta funkcja dokonuje konwersji formatu całego projektu, a więc znacznej zmianie ulegnie wygląd plików bobj, bform, a kod C# zostanie wyodrębniony do plików *.cs. Konwersji nie należy wykonywać, jeśli na projekcie pracuje jednocześnie wiele osób na różnych branchach na gicie. Jeśli jeden branch ulegnie konwersji a inne nie, kod może przestać być mergowalny i porównywalny. Dlatego zaleca się: Wstrzymać rozwój danego projektu w określonym oknie czasowym. Domergować wszystkie branche do jednego. Dokonać konwersji na format 6.0. Na nowo odbić branche do równoległego rozwoju projektu.

Tip

Jeśli po konwersji projektu na 6.0 w edytorze kodu nie widzimy kodu niektórych obiektów, to zaznaczamy nasz projekt w Neos Expercie, klikamy przycisk strzałki --> Napraw pliki projektu. Jednakże jest to tylko dodatkowy krok, który wykonujemy w przypadku wystąpienia problemów z widocznością kodu w obiektach. Patrz temat: TSU-2953

Edycja kodu C

Aby edytować kod w VS, uruchom okno edytora kodu dla dowolnego obiektu biznesowego w Neos Expercie, a następnie kliknij przycisk “Edytuj w Visual Studio”, który znajduje się nad oknem z kodem metody. Przycisk ten uruchamia VS Code w odpowiedni sposób, czyli: otwierana jest właściwa solucja i odpowiedni plik źródłowy (tego obiektu, który był otwarty w Neos Experecie), są automatycznie instalowane wtyczki do VS Code, jeśli ich nie ma (wtyczka wspierająca edycję w języku C#, oraz Solution Explorer)

W VS Code można już edytować kod. Aby przełączyć się na inne dokumenty, można skorzystać z widoku solucji, który jest dostępny po lewej stronie.

Pisząc kod C# równolegle w VS i w Neos Experecie należy zwrócić uwagę na kilka rzeczy: - W VS można dodawać w klasach elementy, które nie są metodami (np enumy, propertisy, regiony, itp) - Neos Expert nie będzie ich pokazywał na liście, ale nie usunie po edycji metod w Neos Expercie. - W VS można ustawić metody w dowolnej kolejności - Neos Expert nie widzi kolejności metod i pokazuje je alfabetycznie, ale nie usunie ręcznie ustalonej kolejności. - W VS można dodawać nowe pliki do projektów. Plików tych nie zobaczy Neos Expert, gdyż nie są to pliki powiązane z obiektami biznesowymi.

Zarówno w VS jak i w Neos Expercie należy unikać błędów składniowych typu nadmiar / niedomiar klamerek zamykająco-otwierających. Może to spowodować, że Neos Expert pogubi się w trakcie wczytywania metod i możemy w ogóle przestać widzieć metody w Neos Expercie.

Jeśli przekonwertujemy projekt do formatu 6.0, to jest możliwa także ponowna konwersja do formatu 1.0. Należy jednak uważać, jeśli w projekcie znajduje się już jakiś kod C# poza ciałem metod. Konwersja do formatu 1.0 zapisze tylko metody, pomijając całą resztę, więc projekt może się nie kompilować. Jeśli czujemy, że w VS Code intellisense nie widzi wszystkiego, to robimy: F1 -> .NET: Restart Language Server

Co commitować na gicie?

W formacie 1.0 projekty neosowe składały się z plików: .bobj, .bform, .bproj i .brole. W formacie 6.0 do każdego projektu dodawany jest podfolder “Code”, w którym dochodzą pliki: .cs, .csproj, które także należy commitować na git.

Jedynym plikiem, który nie powinien być commitowany jest plik “Autogenerated.include”. Najlepiej dodać go do .gitignore.

Pojawiające się zmiany w plikach projektów po starcie Neosa

Od wersji Neosa 6.1 został poprawiony format plików projektów Neosowych, może to powodować, że podczas startu serwera lub edycji projektów będą pojawiać się nieintencjonalne zmiany w plikach .bobj i .bform. Aby tego uniknąć, należy jednorazowo przejść następujące kroki: 1. W NeosExpercie kliknąć akcję "Zapisz wszystkie projekty" (akcja ta jest zagnieżdżona w przycisku "strzałki w dół")

  1. Przejrzeć i zakomitować zmiany, które nie zmieniają logiki działania projektu. Spodziewane zmiany to:

a) Usunięty węzeł <OBJECTTYPE>BUSINESSOBJECTDEF</OBJECTTYPE>

b) Zmiana formatu węzła z <LABEL.pl>REGON</LABEL.pl> na <LABEL Language="POLISH">REGON</LABEL>

c) Zmiana kolejności akcji standardowych (zmiana PREV w akcjach, które po swoim uuid mają na przykład PostRecord, ShowNewRecord itp.)

Zakomitowane zmiany nie powinny się już więcej pojawiać.

Metody wyzwalane automatycznie na formie

W nowym Neosie metody wyzwalane automatycznie na formie są uruchamiane w trakcie otwierania formy, w przeciwieństwie do starej wersji Neosa.