DZWON

Są tacy, którzy przeczytali tę wiadomość przed tobą.
Zapisz się, aby otrzymywać najnowsze artykuły.
E-mail
Nazwa
Nazwisko
Jak chciałbyś przeczytać The Bell
Bez spamu

W ostatniej lekcji rozważaliśmy zwykłego (grubego) klienta. W wersji platformy 1C 8.2. Używają nowych formularzy ekranowych 1C 8.2. Nazywa się je formularzami zarządzanymi 1C 8.2.

Zarządzane formularze 1C 8.2 to przyszłość 1C. Różnią się od zwykłych formularzy 1C 8.2 tym, że są generowane automatycznie przez system na podstawie specjalnych ustawień („zwykłe” formularze są po prostu rysowane przez programistę do woli).

Różnice w rozwoju formularzy zarządzanych 1C 8.2 od zwykłych są znaczące. Dlatego zebraliśmy się dzisiaj, aby osobno omówić tworzenie i modyfikację formularzy zarządzanych 1C 8.2.

Zarządzane formularze 1C 8.2

Jeśli wcześniej opracowywałeś konfiguracje 1C, po otwarciu edytora formularzy zarządzanych 1C 8.2 od razu będziesz zdezorientowany faktem, że w ogóle nie można wpływać na formularz 1C 8.2 za pomocą myszy.

Nie możesz zmienić formularza 1C 8.2, nie możesz przenieść elementu, nie możesz nawet wyświetlić właściwości pola jak poprzednio - klikając dwukrotnie pole na formularzu 1C 8.2.

Teraz podstawą do opracowania formularza 1C 8.2 nie jest wiązanie pól ze współrzędnymi w formularzu, ale specjalne ustawienia. System automatycznie generuje zarządzany formularz 1C 8.2 na podstawie tych ustawień.

Ustawienia składają się z listy elementów formularza 1C 8.2 znajdujących się w edytorze w lewym górnym rogu. Elementy formularza 1C 8.2 obejmują:

  • Przybory
  • Polecenia (nowa koncepcja 1C 8.2, może wyglądać jak przyciski lub elementy menu)
  • Grupy (do łączenia szczegółów i poleceń).

W związku z tym ustawienia tych elementów nie znajdują się we właściwościach pól, ale we właściwościach tych elementów ustawień (menu prawego przycisku myszy, element Właściwości).

Jak działają formularze zarządzane 1C 8.2

Praca z formularzami zarządzanymi 1C 8.2 jest inna dla użytkownika. Mają więcej funkcji, ale są niezwykłe dla tych, którzy pracują z 1C od dłuższego czasu.

Przede wszystkim różni się lokalizacja zwykłych elementów w formularzu 1C 8.2. Pasek poleceń jest zawsze na górze.

Lewą stronę paska poleceń można dostosować. Zwykle zawiera takie typowe przyciski, jak Nagraj i Wyślij.

Prawa strona panelu poleceń to nowe standardowe menu formularza 1C Wszystkie akcje. To menu pozwala zarządzać formularzem 1C 8.2 według własnego uznania, podobnie jak ustawienia w raporcie ACS pozwalają znacząco zmienić wygląd raportu.

Dowolne pozycje menu 1C Wszystkie akcje

W zależności od tego, czy ten formularz 1C 8.1 należy do jednego, czy drugiego, menu jest wypełnione elementami, które pozwalają zarządzać tym obiektem. Na przykład, jeśli jest to formularz listy katalogów, pojawią się polecenia takie jak Utwórz lub Edytuj.

Pozycja Dostosuj listę menu 1C Wszystkie akcje

Jeśli w formularzu 1C 8.2 znajduje się lista, menu zawiera polecenie Ustaw listę i Wyświetl listę.
Jeśli polecenie Lista wyjściowa jest już Ci znane - pozwala zapisać dowolną listę w 1C w Excelu / wydrukować ją, to drugie polecenie jest nowe.

Jak już zauważyłeś, na pasku poleceń list nie ma już przycisków wyboru. Zamiast tego pojawił się przycisk Znajdź, do którego działa (a także do wyłączonego teraz pozycjonowania kursora na liście podczas pisania) - są skargi.

Funkcjonalność przycisku Znajdź oczywiście nie jest porównywalna z wyborami, ale nigdzie nie zniknęły!
Znajdują się one teraz w pozycji menu Dostosuj listę. Selekcji można teraz dokonać według dowolnego pola, a dodatkowo sortowanie i formatowanie warunkowe można wykonać w taki sam sposób, jak w raportach SKD.

Pozycja Zmień formularz menu 1C Wszystkie akcje

Pozycja formularza Zmień pozwala w podobny sposób zmienić nie tylko listę w formularzu 1C 8.2, ale także sam formularz 1C 8.2.

Użytkownik może niezależnie włączać lub wyłączać widoczność pól w formularzu 1C 8.2, szerokość i wysokość, aktywację domyślnego pola podczas otwierania itp.

Korzystanie z formularzy zarządzanych 1C 8.2 i konwencjonalnych formularzy 1C

Domyślnie zwykłe formularze 1C są używane w konfiguracjach grubego (zwykłego) klienta 1C, a formularze zarządzane są używane w konfiguracjach cienkiego i internetowego klienta 1C. Jednak obie formy 1C mogą być używane w dowolnej konfiguracji, w tym jednocześnie.

W tym celu należy również wejść we właściwości konfiguracyjne (górny element w oknie konfiguracyjnym).

We właściwościach konfiguracji w 1C 8.2 pojawiły się dwa nowe pola wyboru, które pozwalają włączyć niestandardowe użycie formularzy 1C.

Tworzenie formularzy zarządzanych 8.2

Dodanie nowego formularza 1C 8.2 odbywa się w taki sam sposób jak poprzednio - za pomocą przycisku Ins na klawiaturze lub przycisku Dodaj. Aby wprowadzić istniejący, kliknij go dwukrotnie myszą.

Domyślnie zostanie utworzony formularz (zwykły lub zarządzany) ustawiony w konfiguracji (patrz właściwość Główny tryb uruchamiania we właściwościach konfiguracji).

Konstruktor poprosi o wybór typu formularza - forma elementu, lista. Tutaj możesz dodawać lub usuwać paski poleceń na formularzu. Najczęściej te ustawienia są domyślnie pozostawione bez zmian.

Otwiera się formularz wypełniony domyślnie - wszystkie szczegóły obiektu 1C, które są do niego dodane. Możesz zaznaczyć konkretną listę wymaganych pól na drugiej zakładce konstruktora.

Edytor formularzy składa się z trzech sekcji.

  • W lewym górnym rogu znajduje się lista elementów formularza. Składa się z pól, poleceń i grup, które umożliwiają łączenie elementów. Listę poleceń można przeglądać oddzielnie na karcie Interfejs poleceń.
  • W prawym górnym rogu znajduje się lista dostępnych atrybutów formularza oraz atrybutów obiektu (otwórz krzyżyk obok atrybutu Obiekt).
  • Poniżej znajduje się podgląd wynikowego formularza.

Możesz przeciągnąć dostępne szczegóły w lewo i stanie się to elementem formularza (polem na formularzu).

Jeśli chcesz dodać przycisk lub element menu, po prawej stronie karty Polecenia musisz utworzyć nowe polecenie. To jest opakowanie dla funkcji w module formularza. Oprócz określenia, która funkcja zostanie faktycznie wywołana, można przypisać reprezentację - na przykład obraz, a także zależność widoczności od opcji funkcjonalnej.

Polecenia są również przeciągane w lewo. Jeśli rodzic jest paskiem poleceń, będzie to przycisk paska poleceń - w przeciwnym razie tylko przycisk.

Na liście elementów formularza (pól) można nie tylko przeciągnąć atrybut obiektu/formularza, ale także po prostu go dodać (przycisk Dodaj lub Ins). W szczególności możesz utworzyć nowy obiekt formularza - Grupę.

Grupą może być panel poleceń (kursor musi znajdować się w wierszu Formularz). Następnie przeciągasz do niego polecenia i stają się one przyciskami.

Grupa może być „zwykła”. Następnie jest to sposób na grupowanie pól zarówno w pionie, jak iw poziomie. Nazwę grupy można usunąć we właściwościach.

Grupą może być panel (strony). Najwyżej dodaną grupą jest panel, a zagnieżdżonymi grupami tego typu są strony. Pola są już przeciągane na strony.

Zbędne elementy formularza są usuwane poprzez usunięcie elementów formularza z listy.
Położenie pola na formularzu określa kolejność elementów na liście (pionowo) lub grupami (poziomo). Szerokość i wysokość ustawia się we właściwościach elementu formularza.

Właściwości elementu formularza zostały znacznie rozbudowane i zawierają wiele przydatnych rzeczy - zarówno kontrolę wyglądu (przyciski wyboru i czyszczenia), jak i sprawdzanie wartości domyślnych.

Właściwości samego formularza, w tym jego wymiary, są ustawiane w elemencie głównym formularza o tej samej nazwie Form.

Programy obsługi zdarzeń (reakcji na działania użytkownika) dzielą się teraz na dwa typy. Stare - tak jak poprzednio, są one określone we właściwościach formularza i pól (np. OnChange i OnOpening the form). Nowość — stały się poleceniami i są używane w pozycjach menu i przyciskach.

Wszyscy wiemy, że firma 1C miała wiele różnych wersji platformy 1C, teraz będziemy zainteresowani jedną z najnowszych wersji w momencie pisania tego tekstu, są to wersje 1C 8.2 i 1C 8.3. Jeśli musiałeś pracować w obu tych wersjach, to najprawdopodobniej tak zauważył różnice w interfejsach tych wersji, dla użytkowników różnią się tylko zewnętrznie. Zasadniczo wybór zwykła lub zarządzana aplikacja mówi systemowi, które formularze wyświetlić, aby uruchomić, regularne lub kontrolowane, a także który klient aplikacji będzie używany domyślnie, gruby czy cienki. Aby uzyskać więcej informacji na temat klientów, zobacz artykuł „Co to jest gruby i cienki klient w 1C, a także ich różnice”.

Zwykła aplikacja 1C (zwykłe formularze, normalny interfejs, wersja 1C 8.2)

W 1C 8.2 możliwa jest tylko praca z normalnymi formularzami, w normalnym trybie aplikacji. Poniższy obraz pokazuje bazę w trybie działania „zwykłej aplikacji 1C” (zwykłe formularze).

Aplikacja zarządzana 1C (formularze zarządzane, interfejs zarządzany, wersja 1C 8.3)

Na platformie 1C 8.3 możemy pracować zarówno ze zwykłymi formularzami (w trybie zgodności), jak iz formularzami zarządzanymi. I zarządzane formularze mają dwa rodzaje wyświetlania, są to standardowe i taksówki. Przykład konfiguracji 1C 8.3 ze standardowymi formularzami zarządzanymi pokazano poniżej, a po nim pokazano interfejs Taxi.

Jaka jest różnica między zwykłą a zarządzaną aplikacją 1C?

Jak już się dowiedzieliśmy zwykła aplikacja i aplikacja zarządzana to takie rodzaje uruchamiania programu 1C. Ponadto, w zależności od wartości typu uruchomienia 1C ( zwykła lub zarządzana aplikacja), określony interfejs zostanie załadowany domyślnie ( formularze zwykłe lub zarządzane), stąd istnieje tak wiele synonimów tego pojęcia. Chcielibyśmy zauważyć, że różnice w interfejsach są dość znaczące, interfejs zarządzany został całkowicie przeprojektowany. Zasadniczo są to wszystkie różnice, które widzą zwykli użytkownicy programu 1C. Jeśli chodzi o programistów, zarządzany interfejs wymaga napisania zmodyfikowanego kodu, ponieważ rozwój jest już w toku w 1C 8.3, a nie w 1C 8.2, stąd wszystkie wynikające z tego konsekwencje. Kod musi być również podzielony na klienta i serwer, jest to wskazane za pomocą odpowiednich dyrektyw w konfiguratorze.

Platforma 1C:Enterprise umożliwia programowe dodawanie i modyfikowanie elementów zarządzanego formularza. Zobaczmy, dlaczego może to być potrzebne.

Programowa modyfikacja formularza może być wymagana w kilku przypadkach:

  • Podczas finalizowania typowych konfiguracji w celu ułatwienia późniejszej procedury aktualizacji. W takim przypadku zmieniony zostanie tylko moduł formularza. Moduły są znacznie łatwiejsze do aktualizacji niż formularz.
  • Podczas wdrażania niektórych ogólnych algorytmów. Np. w podsystemie „Zakaz edytowania szczegółów obiektów” dla wszystkich obiektów podłączonych do podsystemu tworzony jest programowo przycisk umożliwiający edycję szczegółów.
  • Podczas wdrażania niektórych określonych algorytmów. Na przykład pola do edycji dodatkowych szczegółów są tworzone w podręczniku Nomenklatury.

W zarządzanym formularzu możesz programowo dodawać, modyfikować i usuwać:

  • przybory;
  • komendy lokalne;
  • elementy.

Wszystkie te operacje są możliwe tylko na serwerze.

Programowe przekształcanie ma ograniczenia:

  • Możesz usuwać tylko programowo dodane atrybuty/polecenia/elementy. Nie można programowo usuwać obiektów utworzonych w konfiguratorze.
  • Nie ma możliwości przypisania atrybutu jako głównego.

Zmiana poleceń formularza

Aby zarządzać składem poleceń dla obiektu Zarządzany formularz mieć kolekcję Zespoły

    Dodać (< ИмяКоманды >)

    Ilość ()

    Znajdować (< ИмяКоманды >)

    Usuwać (< Команда >)

Kolekcja Commands jest dostępna zarówno na kliencie, jak i na serwerze. Modyfikowanie kolekcji (metody Add() i Remove() ) jest możliwe tylko na serwerze. Możesz wyszukać i uzyskać liczbę elementów (metody Find () i Quantity () ) zarówno na kliencie, jak i na serwerze.

Jako przykład pracy z poleceniami formularzy utwórzmy nowe polecenie ChangeHistory o tytule „Change History…”, które wywoła procedurę obsługi Wyświetl historię() . Tworzenie odbywa się w momencie otwarcia formularza.

&Na serwerze
Procedura OnCreateOnServer (błąd, standardowe przetwarzanie)
Zespół = Polecenia. Dodać( „Historia zmian”);
Zespół . Akcja = ;
Zespół . tytuł = "Historia zmian...";
Procedura końcowa
&U klienta
Procedura Connected_DisplayHistory(Command)
// akcje poleceń
Procedura końcowa

Program obsługi poleceń musi znajdować się w formularzu i mieć dyrektywę kompilacji &AtClient .

Zmiana szczegółów formularza

Odczytywanie składu atrybutów formularza odbywa się za pomocą funkcji Uzyskaj szczegóły(< Путь >), która zwraca tablicę typu FormAttributes. Parametr funkcji określa ścieżkę do atrybutu nadrzędnego (jako ciąg znaków). Jeśli parametr zostanie pominięty lub podany zostanie pusty ciąg, zwracane są poświadczenia najwyższego poziomu.

Zmiana szczegółów odbywa się metodą Edytuj wymagania(<Dodano szczegóły>, <Zdejmowane szczegóły>) obiekt Zarządzany formularz. Opcje Dodano szczegóły I Zdejmowane szczegóły przekazywane są tablice z elementami typu Form Requisite.

Uwaga!

Proces zmiany kompozycji detali jest dość zasobochłonny. W rzeczywistości forma jest odtwarzana. W związku z tym praca ze szczegółami formularza odbywa się w trybie wsadowym.

Utwórzmy nowy atrybut formularza o nazwie Kupujący:


AddedAttributes = Nowa tablica;
Dodano szczegóły. Dodaj (nowy atrybut formularza(„Kupujący”, New TypeDescription („DirectoryReference.Counterparties”), „Klient”);

// Zmiany w składzie atrybutów
);

Zmiana elementów formularza

Zarządzanie kompozycją elementów obiektu Zarządzany formularz mieć kolekcję Elementy. Kolekcja ma kilka metod:

    Wstawić (< Имя>, < ТипЭлемента>, < Родитель>, < Элемент >)

    Dodać (< Имя>, < ТипЭлемента>, < Родитель >)

    Ilość ()

    Znajdować (< Имя >)

    Przenosić(< Элемент>, < Родитель>, < МестоРасположения >)

    Usuwać (< Элемент >)

Kolekcja Elements jest dostępna zarówno na kliencie, jak i na serwerze. Zmodyfikuj kolekcję (Wstaw metody () , Dodaj () , Przenieś () i Usuń () ) są dostępne tylko na serwerze. Możesz wyszukać i uzyskać liczbę elementów (metody Find () i Quantity () ) zarówno na kliencie, jak i na serwerze. Elementami kolekcji mogą być:

  • Forma grupy;
  • Formularze tabel;
  • Pole formularza;
  • Formularze przycisków.

Możesz programowo przypisać procedury obsługi zdarzeń do elementów formularza. W tym celu metoda UstawAkcję(< ИмяСобытия>, < Действие >) .

Przyjrzyjmy się kilku najczęstszym praktycznym przykładom pracy z poleceniami, atrybutami i elementami formularzy.

Dodawanie polecenia i powiązanego z nim przycisku:

// Utwórz zespół
Zespół = Polecenia. Dodać( „Historia zmian”);
Zespół . Akcja = „Historia połączonego_wyświetlania”; // Formularz musi zawierać procedurę o podanej nazwie
Zespół . nagłówek = "Historia zmian...";
// Utwórz przycisk i powiąż go z poleceniem
Element = Przedmioty. Dodać( „Historia zmian”, Type("FormButton" ));
Element.Nazwa polecenia = „Historia zmian”;

Dodawanie atrybutu i powiązanego z nim pola wejściowego:

// Opis dodanych szczegółów
AddedAttributes = Nowa tablica;
Dodano szczegóły. Dodać(Nowy atrybut formularza („Kupujący”, Nowy opis typu ( „Link referencyjny. Kontrahenci”), "Klient" ));
// Zmiana kompozycji atrybutów
EditAttributes(AddedAttributes);
// Tworzenie pola wejściowego i połączenie z atrybutem
Element = Przedmioty. Add("Klient", Type("FormField" ));
Element . Widok = ViewFormFields. pole wprowadzania;
Element . Ścieżka do danych= "Kupujący";

Przypisanie procedury obsługi zdarzenia do elementu formularza:

Kupujący przedmiot. UstawAkcja(„Kiedy to się zmienia”, „Plug-in_BuyerOnChange”);

&U klienta
Procedura Plugin_BuyerOnChange(Element )
// Akcje zdarzenia
Procedura końcowa

Uwaga!

Procedury, które są instalowane jako procedury obsługi zdarzeń z kodu przy użyciu metody UstawAkcję(), zaleca się użycie prefiksu Connected_.

Uwaga!

Możesz pobrać przetwarzanie z przykładami programowego wyszukiwania i zmiany szczegółów, poleceń i elementów zarządzanego formularza.

Głównym problemem jest to, że od 10-15 lat dużo kodu zostało już zawyżone dla zwykłych formularzy. Nikt nie chce przepisywać tego wszystkiego na klient-serwer + wiele osób jest przeszkolonych do pracy z interfejsem. Obowiązkowe przejście na BP 3.0 w przyszłym roku wywołuje panikę w umysłach programistów i księgowych. Informacje zwrotne będą bardzo bezstronne. Do tego poprzeczka wejścia do zawodu rośnie, programowanie jest trudniejsze, typowe stały się jeszcze trudniejsze. Jaka jest wartość nowego algorytmu do przeprowadzania w standardowych dokumentach. UV wygląda świetnie, gdy masz 2-3 przyciski na dokumentach, UV świetnie nadaje się do pracy na urządzeniach mobilnych, ale używa go 0,01% firm. Będziesz musiał się przełączyć, jeśli 1C nie wymyśli czegoś nowego, ale będzie to długie i bolesne dla wszystkich. A same firmy będą musiały zapłacić pieniądze.

Ja też do tej pory doświadczam tylko negatywnych form zarządzanych, oto inne wady innowacji:

  • Nic? Cóż, kilka razy natknąłem się na przykład na napisanie i dołączenie zewnętrznego formularza piekarnika do conf, przetwarzania jest cała epopeja, jest wiele instrukcji w Internecie i stronach kodowych.
    na grubym kliencie jedna procedura z parametrami tj. rozwój to kwestia minut.
    a hamulce są cienkie gołym okiem
  • Co do możliwości przygotowania zarządzanych formularzy - to jest sztuka dla sztuki, ale jakie to ma praktyczne znaczenie, szczególnie dla wersji plikowej?
  • Rzeźbiłem w UV przez 3 lata, ale teraz wróciłem do prostych form i wierzcie mi, to przejście było psychologicznie dość trudne do wykonania, ale jest to mój świadomy wybór, ponieważ to, co oferuje 1s na UV, jest całkowicie UG…. może za kilka lat 1c dokona przełomu, ale teraz szuka tylko miejsca, w którym dokona tego przełomu...
  • UV w konfiguratorze otwierają się znacznie dłużej.
    Następnie otwieranie formularzy w 8.1 - jak przenieść się do samolotu z ciężarówki!
  • Jest więcej hemoroidów dla wszystkich, użytkownicy są zszokowani nowym interfejsem (nie wszyscy się przyznają, ale są głupsi o wiele bardziej i na mniejszych szczegółach), połowa programistów stała się nieprzydatna dla profesjonalistów, przeciętnemu specjaliście stało się trudniej znaleźć pracę i jak wytwarzać produkt wysokiej jakości. A najfajniejszym motywem marketingowym UV jest to, że wszędzie, gdzie szybują, przejście jest prostą aktualizacją, tylko czymś, o czym wszyscy zapominają, że od samego początku trzeba nadążać za najnowszymi wydaniami! Ale ogólnie pomysł mi się podoba!
  • Nie wiem, moja praktyka pokazuje coś przeciwnego. Tam, gdzie od kilku lat buki w prostych formach uderzają na maszynie od kilku lat, w nowym standardzie UV co miesiąc zaczyna się „kurwa, gdzie teraz jest 1C po aktualizacji tego przycisku i dlaczego teraz nie działa”, co, widzisz, nie dodaje prędkości.
  • - więcej kodu
    - kod stał się bardziej skomplikowany
    - udoskonalenie standardowych - znacznie trudniejsze
    - użytkownicy, którym dałem UT11 nie znaleźli żadnych zalet w porównaniu do 10.x
    - ale znaleźli hamulce i brak niektórych funkcji, takich jak wyszukiwanie (z jakiegoś powodu chcieli szukać tam iz powrotem, a nie z wyborem)
    moim zdaniem - zbyt duże wyrzeczenia dla klienta WWW i tabletów. I osobiście nie widziałem jeszcze prawdziwej pracy z klientem internetowym, który musi z powodzeniem korzystać ze zdalnego dostępu
  • Zamieszanie między klientem a serwerem powinno zapewniać wzrost wydajności i skalowalność kosztem zwiększonego kodowania.
    Jednak nie wszyscy wykazywali wzrost, stąd rozczarowanie. A jednocześnie wszyscy byli nastawieni na koszty kodowania.
    PS Właściwie to lubię zarządzane, spokojnie na nich rysuję. Ale typowe stały się wypaczone.
  • W domu (zwykły komputer) prowadzę księgowość dla IP.
    8.3, BP3, w warcaby. Główne wrażenie jest takie, że nie pracuję, tylko cały czas czekam. reakcja hemoroidów. SÓL na koncie powstaje jak zwykły bełkot - sprawia wrażenie konta karty na rok w megaholdingu.
  • UT11 to dziki hamulec, horror i ogólnie koszmar.
    UT10 leci w porównaniu do UT11.
    Jeśli chodzi o UV - robactwo roi się od lat, wszystko jest krzywe, kolumny nigdy nie mieszczą się na jednym ekranie, rozciąganie jest w wielu przypadkach straszne.
    I nadal mogę dać klapsa wiele minusów, prawdopodobnie nie powiem nic od profesjonalistów. Po prostu nie istnieją.
    Firmy szczególnie uderzały w te formy, ponieważ rozwój kosztuje więcej, nie było specjalnych i nie ma normalnych.

Jest kilka zalet, ale z pewnością istnieją ...

plusy:

od dawna jest odpowiedź, której udzieliła UE:

klient wieloplatformowy

  • pracować na złych liniach komunikacyjnych
  • możliwość pracy przez przeglądarkę (bez instalacji klienta)

DZWON

Są tacy, którzy przeczytali tę wiadomość przed tobą.
Zapisz się, aby otrzymywać najnowsze artykuły.
E-mail
Nazwa
Nazwisko
Jak chciałbyś przeczytać The Bell
Bez spamu