dom - Pomysły
Dodatkowe zewnętrzne formularze drukowane 1s 8.3. Dodanie zewnętrznego formularza drukującego do bazy danych

W tym artykule szczegółowo dowiesz się, jak początkujący z niewielką wiedzą na temat 1C 8 może stworzyć drukowany formularz. Weźmy na przykład jedną z najczęstszych konfiguracji 1C 8 - Rachunkowość 2.0. Tworzenie drukowanej formy 1C etapy pisania:

  • Tworzenie zewnętrznego pliku formularza do druku;
  • Stworzenie układu formularza drukowanego;
  • Pisanie kodu programu wyświetlającego dane z wydrukowanego formularza na ekranie;
  • Tworzenie parametrów automatycznej rejestracji drukowanego formularza;
  • Podłączenie zewnętrznej formy drukującej do podstawy Przedsiębiorstwa 1C.

Utworzenie drukowanego formularza 1C. Sformułowanie problemu

Jesteśmy wymagani w konfiguracji Rachunkowość 2.0 utwórz drukowany formularz dokumentu Odbiór towarów i usług. W nagłówku drukowanego formularza wyświetl następujące dane:

  • Organizacja;
  • Kontrahent;
  • Umowa z kontrahentem;
  • Data paragonu.

Wyświetl dane w sekcji tabelarycznej w formie tabeli Dobra dokument. Tabela powinna zawierać następujące kolumny:

  • Nomenklatura;
  • Ilość;
  • Cena;
  • Suma;
  • A także cena towaru na bieżący dzień (według rodzaju ceny z dokumentu).

Zewnętrzny plik przetwarzania

Przejdźmy do rozwiązania problemu. Najpierw otwórzmy 1C 8 w trybie Konfigurator. W tym trybie wszystkie prace rozwojowe są przeprowadzane na platformie 1C 8. Teraz musimy utworzyć zewnętrzny plik przetwarzania. Aby to zrobić, kliknij menu Plik -> Nowy… lub ikoną nowego pliku.

W oknie, które zostanie otwarte, wybierz element Przetwarzanie zewnętrzne.

Następny w terenie Nazwa Musisz podać nazwę przetwarzania zewnętrznego. W naszym przypadku nazwiemy go po prostu „PrintForm”, pole synonimu zostanie wypełnione automatycznie. Należy pamiętać, że w terenie Nazwa, przetwarzanie zewnętrzne, nazwę należy pisać bez spacji i znaków interpunkcyjnych.

Dodajmy atrybuty przetwarzania zewnętrznego Połącz z obiektem i wybierz wpisz dla niego DocumentLink Odbiór towarów i usług. Aby to zrobić, w drzewie metadanych przetwarzania zewnętrznego 1C wybierz element Przybory i naciśnij przycisk Dodać(przycisk z zielonym plusem). Okno właściwości atrybutu otworzy się po prawej stronie ekranu, w polu Nazwa napiszmy - Odniesienie do obiektu. W pole Typ naciśnij przycisk z trzema kropkami.

Rozwińmy gałąź w drzewie typów Link do dokumentu, a następnie znajdź tam element Odbiór towarów i usług, zaznacz pole obok niego i kliknij OK.

Zapiszmy plik przetwarzania zewnętrznego na dysku twardym, w tym celu skorzystaj z menu Plik -> Zapisz, piktogram Ratować(niebieska dyskietka) lub skrót klawiaturowy Ctrl+S. Nazwijmy zapisany plik „PrintForm”.

Tworzenie układu formularza drukowanego

Zacznijmy tworzyć układ formularza drukarskiego 1C. Układ służy jako szablon wydruku drukowanego formularza, więc jeśli chcesz, aby wydrukowany formularz dobrze wyglądał, powinieneś zwrócić na to uwagę.

Dodajmy nowy układ w drzewie metadanych przetwarzania zewnętrznego, w oknie projektanta układu nic nie będziemy zmieniać i klikamy przycisk Gotowy.

W nowym układzie, który się otworzy, utworzymy kilka obszarów niezbędnych do wyświetlenia drukowanego formularza. Wszystkie potrzebne nam obszary układu będą poziome, więc aby utworzyć nowy obszar, wybierz wymaganą liczbę linii układu i przejdź do menu Tabela -> Nazwy -> Przypisz nazwę lub użyj skrótu klawiaturowego Ctrl + Shift + N, następnie wpisz w polu nazwę regionu. Tworząc obszar układu, nie bój się pomylić z liczbą linii, zawsze możesz je dodać lub usunąć. Aby usunąć linię układu 1C, wybierz żądaną linię i wybierz element z menu kontekstowego Usuwać. Aby dodać nową linię do układu, zaznacz dowolną linię układu i wybierz opcję z menu kontekstowego Zwiększać.

Dodawanie nagłówka układu

Przede wszystkim utwórzmy obszar Czapka, wyświetli dane dla nagłówka drukowanego formularza. Do tego obszaru będziemy potrzebować siedmiu linii układu. Zaznaczmy je i tak jak napisałem powyżej wciśnij kombinację klawiszy Ctrl + Shift + N, w polu Nazwa napisz „Kapelusz” i naciśnij przycisk OK.

Wypełnijmy obszar układu potrzebnymi danymi. Zwykle żaden drukowany formularz nie jest kompletny bez tytułu, więc utwórzmy go również w nagłówku naszego układu. Ponieważ w tytule oprócz nazwy drukowanego formularza wyświetlimy także numer dokumentu, z którego został wydrukowany, jako parametr ustawimy treść tytułu w układzie. Parametr układu to specjalnie wyznaczona komórka układu, do której można wyprowadzać różne dane za pomocą wbudowanego języka 1C 8. Tytuł powinien być wyświetlany na całej szerokości drukowanego formularza, zdecydujmy zatem, ile komórek układu wystarczy nam do wydruku na standardowej poziomej orientacji arkusza.

Zwykle wystarczy trzynaście lub czternaście komórek układu, zaznacz je w pierwszym rzędzie obszaru Czapka i połączyć w jedną komórkę ( Menu kontekstowe -> Scal). Następnie kliknij dwukrotnie powstałą dużą komórkę i wpisz nazwę parametru, w naszym przypadku „TitleText”. Aby wprowadzony tekst stał się pełnoprawnym parametrem, kliknij komórkę prawym przyciskiem myszy i wybierz element z menu kontekstowego Nieruchomości. Na zakładkę Układ znajdźmy pole Pożywny i wybierz wartość Parametr. Parametry w układzie 1C są oznaczone nawiasami „<>».

Nagłówek drukowanego formularza powinien wyróżniać się na tle innych tekstów, dlatego ponownie zaznacz komórkę i użyj ikon na panelu formatowania układu, aby ustawić wyrównanie tekstu Wyśrodkowany i rozmiar czcionki 14.

Po tekście tytułu wyświetlimy go w obszarze Czapka informacje o organizacji, kontrahentu, umowie kontrahenta i dacie odbioru towaru. Ponieważ wszystkie te dane są również pobierane z dokumentu, sformalizujemy je również za pomocą parametrów. Ponadto przed każdym parametrem należy napisać tekst objaśniający, aby użytkownik mógł łatwo zrozumieć, gdzie znajduje się organizacja, gdzie znajduje się kontrahent itp. Wszystkie te działania przypominają tworzenie tytułu, więc nie będę się nad nimi szczegółowo rozwodzić, dam tylko obraz tego, co powinno się wydarzyć na końcu.

Rysunek pokazuje, jak parametry układu różnią się od zwykłego tekstu.

Dodawanie nagłówka tabeli układu

Ostatnią rzeczą, którą musimy utworzyć w tym obszarze układu, jest nagłówek tabeli, w którym zostaną wyświetlone dane części tabelarycznej Dobra. Kolumny wymagane do tabeli zostały opisane w części „Opis problemu”. Stworzymy również nagłówek tabeli, korzystając z kombinacji komórek i wpisując tekst (nazwy kolumn). Za pomocą narzędzia wybierz krawędzie nagłówka tabeli Rama, który znajduje się w panelu formatowania układu.

Dodawanie tabeli do układu

Stwórzmy kolejny obszar w układzie - Dane. Zostanie w nim wyświetlona tabela danych części tabelarycznej Dobra. W przypadku tego obszaru potrzebujemy tylko jednej linii układu. Aby wyświetlić wszystkie wiersze części tabelarycznej w formie drukowanej, wypełnimy i wyświetlimy ten obszar wymaganą liczbę razy. Kolumny w okolicy Dane powinien pokrywać się z kolumnami nagłówka tabeli, więc jego wypełnienie nie będzie trudne. Jedyna różnica dotyczy obszaru Dane potrzebujemy parametrów, a nie tylko tekstu. Należy również pamiętać, że domyślnie parametry numeryczne są formatowane po prawej stronie, a parametry tekstowe po lewej stronie. Aby wybrać kolumny, musisz także skorzystać z narzędzia Rama.

Dodawanie stopki do układu

Ostatnim obszarem układu, którego potrzebujemy, jest Piwnica. Wyświetli sumy według ilości i kwoty. Tworzenie jest podobne do tworzenia obszaru Dane, ale dodatkowo wyniki należy podkreślić pogrubioną czcionką.

Efektem końcowym powinien być układ wyglądający tak:

Utworzenie drukowanego formularza 1C. Programowanie

Zacznijmy programować – to najważniejszy etap tworzenia drukowanego formularza. Na początek przejdźmy do modułu obiektu zewnętrznego formularza drukującego, to tutaj będziemy programować. W tym celu w głównym oknie przetwarzania zewnętrznego kliknij Akcje -> Otwórz moduł obiektu.

Należy utworzyć funkcję eksportu w module obiektu zewnętrznego formularza wydruku Foka().

Funkcja Print() Eksportuj funkcję końcową

Należy pamiętać, że ta funkcja jest wymagana w przypadku zewnętrznych formularzy drukujących w konfiguracjach wykorzystujących zwykłą aplikację. Cały kolejny kod programu niezbędny do wyświetlenia drukowanego formularza zostanie zapisany wewnątrz tej funkcji.

Inicjowanie zmiennych podstawowych

Stwórzmy zmienną TabDoc, w którym będzie znajdować się dokument arkusza kalkulacyjnego - to jest dokładnie wydrukowany formularz, w którym będziemy wyświetlać wypełnione obszary układu.

TabDoc = nowy dokument tabelaryczny;

Do zmiennej Układ Otrzymamy utworzony przez nas układ formularza drukowanego. W tym celu korzystamy z wbudowanej funkcji Pobierz układ(<ИмяМакета>).

Układ = GetLayout("Układ");

Wszystkie obszary układu zamienimy na zmienne. W tym celu używamy metody układu Pobierz obszar(<ИмяОбласти>) .

HeaderArea = Układ.GetArea("Nagłówek"); AreaData = Układ.GetArea("Dane"); AreaFooter = Układ.GetArea("Stopka");

Wyprowadzanie nagłówka drukowanego formularza do dokumentu arkusza kalkulacyjnego

Wszystkie niezbędne zmienne są inicjalizowane. Zacznijmy wypełniać i wyświetlać obszary układu w dokumencie arkusza kalkulacyjnego. Na początek uzupełnijmy tytuł formularza do druku, w tym celu musimy przekazać parametr Tekst tytułu, który stworzyliśmy w układzie, potrzebny nam tekst. Aby wypełnić wartości parametrów dla obszaru układu, istnieje specjalna kolekcja o nazwie - Opcje. Od czego przez „.” możesz uzyskać dowolny parametr. W tekście nagłówka przeniesiemy tekst: „Formularz drukowany” oraz numer dokumentu.

Header Area.Parameters.TitleText = "Formularz wydruku"+LinkToObject.Number;

W podobny sposób wypełnimy pozostałe parametry nagłówka, wszystkie niezbędne wartości uzyskamy dla nich ze szczegółów Odniesienie do obiektu, który zawiera łącze do dokumentu do wydrukowania.

HeaderArea.Parameters.Organization = LinkToObject.Organization; HeaderArea.Parameters.Account = LinkToObject.Account; HeaderArea.Parameters.ReceiptDate = ObjectLink.Date; Header Area.Parameters.Counterparty Agreement = LinkToObject.Counterparty Agreement;

Wszystkie parametry nagłówka są wypełnione, wyświetlimy je w utworzonym przez nas dokumencie arkusza kalkulacyjnego, w tym celu używamy metody Wyjście(<Область>) .

TabDoc.Output(Obszar nagłówka);

Napisanie wniosku o wydrukowanie handicapu

Zacznijmy wypełniać i rysować obszar Dane. Tworzenie drukowanego formularza 1C wiąże się również z napisaniem zapytania, jest nam ono potrzebne do uzyskania danych tabelarycznych Dobra i ceny Nomenklatury dla bieżącej daty, której będziemy używać Wniosek. Język zapytań 1C 8 jest podobny do SQL, a raczej praktycznie kopiuje możliwości swojego operatora SELECT, ale całe zapytanie jest napisane w języku rosyjskim. Dlatego jeśli przynajmniej trochę znasz SQL, z łatwością zrozumiesz język zapytań 1C 8.

W tej drukowanej formie żądanie będzie dość proste i wielu powie, że można by się bez niego obejść, ale znajomość języka zapytań i umiejętność jego kompetentnego posługiwania się nim to jedna z głównych umiejętności programisty 1C. Zapytania pozwalają uzyskać złożone próbki danych przy mniejszym zużyciu zasobów, a tekst zapytania jest znacznie łatwiejszy do zrozumienia niż kod programu napisany bez użycia zapytania (lub przy jego minimalnym użyciu). Ponadto 1C 8 ma bardzo dobrego projektanta zapytań, który umożliwia interaktywne składanie zapytania z niezbędnych tabel.

Stwórzmy zmienną, która będzie zawierać żądanie.

Żądanie = Nowe żądanie;

Tekst żądania utworzymy za pomocą konstruktora żądania. Na początek napiszmy:

Żądanie.Text = "";

Umieść kursor myszy pomiędzy cudzysłowami i naciśnij prawy przycisk myszy. W otwartym menu kontekstowym wybierz element Konstruktor żądań, bardzo nam pomoże w stworzeniu formularza do druku 1C. Następnie otworzy się okno projektanta zapytań, które zawiera wiele zakładek, ale do naszego zapytania potrzebne będą tylko cztery: „Tabele i pola”, „Relacje”, „Warunki”, „Złączenia / Aliasy”.

Do naszego zapytania potrzebne będą dwie tabele: część tabelaryczna Dobra dokument Odbiór towarów i usług oraz migawkę najnowszych informacji na temat aktualnej daty rejestru Ceny przedmiotów.

Po lewej stronie okna projektanta znajduje się kolumna Baza danych. Zawiera drzewo wszystkich obiektów metadanych, znajdźmy te, których potrzebujemy. Aby to zrobić, otwórzmy wątek Dokumentacja i znajdź dokument Odbiór towarów i usług, otwórzmy go i znajdź część tabelaryczną Dobra, przeciągnij go do kolumny projektanta zapytań Stoły. Przeciągać można na trzy sposoby: przeciągając, klikając dwukrotnie tabelę lub zaznaczając ją i klikając przycisk „>”. Otwórzmy wątek Rejestry informacyjne i znajdź tam stół CenyNomenklatura.SkrótNajnowsze, przeciągnij go również do kolumny Stoły. Te dwie tabele wystarczą do naszego zapytania.

Wybierzmy potrzebne nam pola z wynikowych tabel. Aby to zrobić, w kolumnie Stoły otwórzmy stół i znajdź pola: Nomenklatura, ilość, cena, ilość i przeciągnij je do trzeciej kolumny konstruktora - Pola. Rozwińmy tabelę , znajdźmy pole Cena i również przeciągnij go do Pola.

Struktura tabel i pól naszego żądania jest gotowa, przejdźmy teraz do warunków. Potrzebujemy danych tabelarycznych Dobra nie zostały pobrane ze wszystkich paragonów, a jedynie z tego, który drukujemy. Aby to zrobić, nałożymy na stół warunek Odbiór towarówUsługiTowary. Przejdźmy do zakładki „Warunki” projektanta zapytań. W kolumnie Pola znajdują się wybrane przez nas wcześniej tabele, do warunku będziemy potrzebować pola Połączyć ze stołu Odbiór Towarów i Usług Towarowych, Przeciągnijmy go do okna Warunki.

W zapytaniach 1C możesz używać parametrów, które są potrzebne do przesłania danych do żądania. Przykładowo, jeśli chcemy ograniczyć wybór dokumentów do konkretnego dokumentu, to możemy zastosować parametr, aby przekazać do zapytania link do tego dokumentu i wykorzystać ten parametr w warunku. Dokładnie to zrobimy w naszej prośbie.

Po oknie Warunki dodaliśmy pole Połączyć, projektant zapytań sam utworzy parametr o tej samej nazwie i umieści go po znaku „=”. W razie potrzeby nazwę tego parametru można zmienić. W tekście żądania parametry są oznaczone znakiem „&”, ale w tym przypadku nie jest to konieczne, ponieważ zakłada się, że druga część warunku zawiera parametr, wystarczy o tym pamiętać. Sposób przekazania wartości do parametru żądania 1C zostanie omówiony poniżej.

Ponieważ w zapytaniu nie posługujemy się pełną tabelą cen produktów, lecz wirtualną (w tym przypadku wycinkiem tej ostatniej), musimy ustalić warunki powstania tej wirtualnej tabeli, w naszym przypadku jest to datą graniczną oraz warunkiem dotyczącym rodzaju cen (ceny posiadające ściśle określony rodzaj ceny to te określone na drukowanym przez nas dokumencie paragonowym).

Aby uzupełnić parametry wirtualnej tabeli należy przejść do zakładki Tabele i pola konstruktor zapytań w kolumnie Stoły wybierz tabelę CenyNomenklaturaCięcieNajnowsze i naciśnij przycisk Opcje wirtualnego stołu, znajdujący się na górze. W oknie, które zostanie otwarte, w polu Okres należy ustawić parametr, do którego będzie przekazywana data, w której nastąpi obniżka ceny. W naszym przypadku będzie to data bieżąca (czyli dzisiejsza), dlatego parametr nazwiemy „&CurrentDate”. W polu warunków napiszemy warunki dla typu ceny, przekażemy je także w parametrze, który nazwiemy „&TypePrice”. Wynikowy warunek będzie wyglądał następująco (gdzie Typ Cena- pomiar rejestru Ceny przedmiotów):

Typ ceny = &Typ ceny

Parametry wirtualnej tabeli zostaną wypełnione, kliknij przycisk OK.

Teraz, gdy ograniczyliśmy wybór tylko do potrzebnego nam dokumentu, utwórzmy połączenia między tabelami zapytań. Jeżeli tego nie zrobimy, ceny z tabeli CenyNomenklaturySliceLast nie zostaną powiązane z pozycją z paragonu. Przejdźmy do zakładki Znajomości projektant zapytań. Stwórzmy połączenie w całym terenie Nomenklatura między naszymi dwoma stołami. Aby to zrobić, naciśnij przycisk Dodać, w polu Tabela 1 wybierz stolik Odbiór towarówUsługiTowary, oraz w polu Tabela 2 - Nomenklatura cenSliceLast. W warunkach komunikacji wybierz pola Nomenklatura z obu tabel.

Należy również zauważyć, że przy wyborze zapytania musimy pobrać wszystkie wiersze z części zakładki Dobra i ceny tylko wtedy, gdy są dostępne w bieżącym dniu dla typu ceny dokumentu. Zatem dane tabelaryczne Dobra są obowiązkowe, ale dane dotyczące podziału cen nie są dostępne. Dlatego w relacjach pomiędzy tymi tabelami konieczne jest zastosowanie tzw. LEFT JOIN, a lewa (lub wymagana) tabela zostanie Odbiór towarówUsługiTowary i prawy (lub opcjonalny) PriceNomenclatureSliceLast. Aby lewe złączenie tabel zapytań działało w sposób opisany powyżej, musisz zaznaczyć to pole Wszystko po polu Tabela 1.


Żądanie jest prawie gotowe, pozostaje tylko trochę popracować nad aliasami pól. Przejdźmy do zakładki Związki/aliasy i ustaw alias dla pola CenyNomenklatura Slice Latest.Cena. Pseudonim będzie brzmieć - Cena na dzień dzisiejszy, konieczne jest, aby nazwy pól wyboru zapytania odpowiadały nazwom parametrów w układzie formularza drukowanego.

Praca w projektancie zapytań została zakończona, kliknij OK. Po zamknięciu okna projektanta zobaczysz, że linia z tekstem żądania jest wypełniona i wygląda następująco:

Request.Text = "WYBIERZ | Odbiór towarówUsługiProdukty.Nomenklatura, | Odbiór towarówUsługiTowary.Ilość, | Odbiór towarówUsługiProdukty.Cena, | Odbiór towarówUsługiProdukty.Ilość, | CenyNomenklatura Kawałek najnowszej.Cena AS CenaDzisiaj | OD | Dokument. Odbiór TowaryUsługi.Towary jako paragonDo varsUsługiProdukty LEWE POŁĄCZENIE RejestracjaInformacja.CenyNomenklatura.SliceLast (| &CurrentDate, PriceType = &PriceType) JAK Nomenklatura CenySliceLast | PO przyjęciu towaruUsługiProdukty.Nomenklatura | = CenyNomenklaturaSliceLast.Nomenklatura |WHERE | Odbiór towarówServ icesProducts.Link = &Link";

Wykonanie żądania

Przekażmy do żądania niezbędne parametry, w tym celu skorzystamy z metody request UstawParametr(<ИмяПараметра>,<Значение>). Aby uzyskać aktualną datę należy skorzystać z wbudowanej funkcji Bieżąca data(), zwraca datę i godzinę komputera.

Uruchommy zapytanie, aby uzyskać próbkę z potrzebnymi nam danymi. Aby to zrobić, najpierw użyj metody żądania Uruchomić(), a następnie metoda Wybierać().

Wybierz = Query.Run().Wybierz();

Wypełnianie wydrukowanej tabeli formularza

W rezultacie w zmiennej Próbka będzie zawierał wybór wyników zapytania, możesz się po nim poruszać za pomocą metody Następny() i aby przejść przez całość, potrzebujesz pętli Do widzenia. Projekt będzie następujący:

Podczas gdy Select.Next() Loop EndLoop;

To w tej pętli wypełnimy i wyświetlimy obszar układu Dane. Ale najpierw zainicjujmy dwie zmienne typu numerycznego. Zbierzemy w nich sumy według ilości i kwoty, które musimy wyświetlić w obszarze Piwnica.

Całkowita Suma = 0; Całkowita ilość = 0;

Wewnątrz pętli wypełnimy obszar Dane dane z bieżącego elementu selekcji na zmienne Całkowita kwota I Całkowita ilość dodać wartości sumy i ilości, a na koniec wyświetlić obszar w dokumencie arkusza kalkulacyjnego, stosując znaną nam już metodę Wyjście(). Ponieważ nazwy pól naszego żądania całkowicie pokrywają się z nazwami parametrów obszaru Dane, następnie do wypełnienia użyjemy wbudowanej procedury FillPropertyValues(<Приемник>, <Источник>), który kopiuje wartości właściwości<Источника>do właściwości<Приемника>.

Podczas gdy Selection.Next() Loop FillPropertyValues(AreaData.Parameters,Selection); TotalSum = Suma Całkowita + Suma Próbki; TotalQuantity = Całkowita ilość + Próbka.Ilość; TabDoc.Output(Dane obszaru); Koniec cyklu;

Wyprowadzanie stopki drukowanego formularza do dokumentu arkusza kalkulacyjnego

Pozostaje wypełnić i wyświetlić ostatni obszar układu - Piwnica. Przygotowaliśmy już dane do napełniania, napełnianie i pobieranie odbywa się według tego samego schematu.

AreaFooter.Parameters.TotalQuantity = Całkowita ilość; AreaFooter.Parameters.TotalSum = Suma całkowita; TabDoc.Output(AreaFooter);

Dokument arkusza kalkulacyjnego jest całkowicie wypełniony, pozostaje jedynie wyświetlić go na ekranie, aby użytkownik mógł obejrzeć wydrukowany formularz i w razie potrzeby go wydrukować. Ale w typowych konfiguracjach 1C 8 procedury specjalnych modułów są odpowiedzialne za wydruk zewnętrznych formularzy drukowanych. Wystarczy zatem wrócić z funkcji Foka() wypełniony dokument arkusza kalkulacyjnego.

Wróć do TabDoc;

W tym momencie etap programowania jest zakończony i tworzenie formularza drukującego 1c jest prawie ukończone. Pełny tekst funkcji Foka() Nie będę tego tutaj podawać, możecie obejrzeć w pliku do druku, który możecie pobrać na dole artykułu.

Utworzenie drukowanego formularza 1C. Opcje automatycznej rejestracji

Podłączając do bazy formularz drukowy zewnętrzny, system nie określa automatycznie, dla jakiego dokumentu lub skoroszytu przeznaczony jest formularz drukowy, należy go wybrać ręcznie. A jeśli drukowany formularz napisała inna osoba, a Ty masz jedynie za zadanie go podłączyć, to wybór może stać się niejednoznaczny. Aby uniknąć takich problemów, we wszystkich drukach zewnętrznych należy stworzyć układ z parametrami autorejestracji. Jeżeli jest on utworzony i prawidłowo sformatowany, system automatycznie określa, do jakiego dokumentu lub księgozbioru przeznaczony jest drukowany formularz.

Odbywa się to w następujący sposób:

  • W przetwarzaniu zewnętrznym tworzymy nowy układ. Nazywamy to „Settings_Auto-Registration” (ważne, aby nie popełnić błędu!).
  • W pierwszej komórce układu piszemy Dokumentacja.(Lub Katalogi.) oraz nazwę dokumentu, do którego należy podłączyć wydrukowany formularz.

Podłączenie zewnętrznej formy drukującej do podstawy

  • Uruchom tryb 1C 8 Firma;
  • Przejdź do menu Serwis -> Dodatkowe raporty i przetwarzanie -> Dodatkowe zewnętrzne formularze drukowane;
  • Naciśnij przycisk Dodać;
  • W oknie, które zostanie otwarte, kliknij ikonę Zastąp zewnętrzny plik przetwarzania;
  • Jeżeli utworzyłeś parametry automatycznej rejestracji, to wyrażamy zgodę na ich użycie;
  • Jeśli nie utworzyłeś parametrów automatycznej rejestracji, to w części tabelarycznej Akcesorium do płyty drukarskiej dodaj wymagany dokument lub księgę referencyjną;
  • naciśnij przycisk OK.

Następnie w menu dostępny będzie zewnętrzny formularz druku Foka dokument Odbiór towarów i usług. Utworzenie drukowanego formularza 1C można teraz uznać za zakończone.

Instrukcje

Otwórz program 1C:Enterprise w wersji 8. Zwróć uwagę na punkt menu „Usługa” - „Zewnętrzne formularze przetwarzania i drukowania”. Za jego pomocą można przechowywać raporty zewnętrzne, przetwarzanie, drukowane formularze, a także przetwarzanie w celu wypełnienia elementów tabelarycznych. Można także podłączyć formularz zewnętrzny zamiast zmieniać istniejący, co wiązałoby się z ingerencją w konfigurację programu.

Uruchom program 1C:Enterprise w trybie konfiguratora, następnie utwórz przetwarzanie zewnętrzne, w tym celu wykonaj polecenie „Plik” - „Nowy”. W wyświetlonym oknie wybierz „Przetwarzanie zewnętrzne”. Na ekranie pojawi się nowy formularz przetwarzania zewnętrznego. Nadaj mu nazwę „Zewnętrzny”. Następnie dodaj nowy atrybut o nazwie „Odwołanie do obiektu”, określ jego typ – „Dokument. Połączyć. Sprzedaż towarów i usług.” Aby utworzyć plik do druku dla innego typu dokumentu, użyj odpowiedniego typu łącza.

Dodaj nowy układ, klikając odpowiedni przycisk w nowym oknie formularza. Nazwij go „Układ”, utwórz obszar o nazwie „Nagłówek”, nadaj mu parametr „Tekst nagłówka”. Następnie kliknij przycisk „Akcje”, wybierz polecenie „Otwórz moduł obiektu”. Następnie wstaw tekst modułu, możesz skorzystać z przykładu zamieszczonego na stronie http://www.uasoft.com.ua/content/articles/315/.

Uruchom program 1C:Enterprise, przejdź do menu Narzędzia, wybierz Zewnętrzne formy drukowe. Dodaj nowy wpis do listy formularzy. W tym celu należy wybrać utworzony plik przetwarzania i w części tabelarycznej wskazać, że formularz należy do dokumentu „Sprzedaż towaru”. Sprawdź, czy nowa płyta drukująca działa prawidłowo. W tym celu należy otworzyć utworzony dokument, prześledzić go, następnie na dole ekranu kliknąć przycisk „Drukuj” i wybrać opcję „Formularz druku zewnętrznego”.

Źródła:

  • jak zmienić wydrukowany formularz w 1c

W celu tworzenia i edycji formularzy obiektowych program 1C:Enterprise udostępnia specjalny edytor formularzy (lub Projektanta Formularzy). Formularze obiektów rozwiązań aplikacyjnych służą do wizualnej reprezentacji danych podczas pracy z programem. Edytor formularzy zawiera kilka zakładek umożliwiających edycję wszystkich elementów formularza.

Będziesz potrzebować

  • komputer, program 1C

Instrukcje

Za pomocą edytora formularzy możesz dodać do formularza jeden lub więcej elementów „Grupa – Strony”, w tym celu na zakładce „Elementy” kliknij zielony znak plusa w lewym górnym rogu edytora.
W trybie 1C:Enterprise wszystkie istniejące elementy grupy będą wyświetlane każdy na osobnej karcie. Aby ustawić go powyżej lub poniżej działającego, w oknie „Właściwości” danej grupy, w pozycji „Wyświetlanie” wybierz odpowiednie polecenie.

Możesz także dodać elementy do formularza, przeciągając wymagane szczegóły do ​​drzewa elementów. Aby ułatwić nawigację po kontrolkach formularzy podczas edycji lub wprowadzania danych, ustal odpowiednią dla siebie kolejność, porządkując elementy w drzewie i podporządkowując je innym elementom oraz dostosowując właściwości elementów grupy do swoich potrzeb.
Aby edytować szczegóły formularza - zmień je, utwórz nowe lub usuń, skorzystaj z panelu w obszarze drzewa szczegółów na odpowiedniej zakładce.

Aby edytować interfejs poleceń należy przejść do odpowiedniej zakładki. Zobaczysz drzewo poleceń, którego głównymi gałęziami są „Panel nawigacji” i „Panel poleceń”. Niektóre polecenia dodawane są do drzewa interfejsu poleceń automatycznie, ale możesz je także dodać samodzielnie, przeciągając potrzebne polecenia z listy poleceń globalnych (ogólnych) lub z listy poleceń formularzy.

Polecenia formularza są edytowane na odpowiedniej liście. Możesz je dodać, usunąć z listy, ustawić właściwości dla każdego polecenia za pomocą palety właściwości, którą możesz wywołać klikając ikonę ołówka w linii poleceń listy.
Aby edytować parametry formularza należy przejść do zakładki „Parametry”, gdzie można je także dodać, usunąć, a także ustawić żądane właściwości.

Wideo na ten temat

Plan kont, stosowany w rachunkowości do przedstawienia działalności gospodarczej przedsiębiorstwa, obsługuje wielopoziomową hierarchię: konto - subkonta. Aby użytkownik mógł przeglądać dane zawarte w planie kont i je poprawiać, system 1C umożliwia zmianę formy konta. Ponadto wydrukowaną formę faktury można zmienić w dowolnym innym dokumencie w 1C.

Będziesz potrzebować

  • - komputer osobisty z 1C.

Instrukcje

Dla każdego konta lub subkonta dostępna jest księgowość analityczna. Dlatego podczas tworzenia, a następnie edytowania planu kont w 1C można podać wymaganą liczbę subkont, czyli analitycznych obiektów księgowych. Ponadto korekt na kontach i subkontach może dokonać zarówno użytkownik pracujący z automatycznym systemem księgowym, jak i twórca oprogramowania.

Więc! Istnieje konfiguracja (na przykład „Zarządzanie handlem”, wydanie 10.3) i dla niej konieczne jest opracowanie zewnętrznego formularza drukowanego. Weźmy na przykład standardowy dokument „Faktura do zapłaty na rzecz kupującego” (chociaż zewnętrzne formularze drukowane można tworzyć nie tylko dla dokumentów, ale także dla katalogów).

Przykład dla 1C 8.3 (formularze zarządzane)

Można zobaczyć przykład opracowania zewnętrznego drukowanego formularza dla zarządzanej aplikacji.

Zadanie

Opracuj zewnętrzny drukowany formularz, który będzie dostępny z dokumentu „Faktura do zapłaty na rzecz kupującego”, i który będzie zawierał nazwę organizacji, kontrahenta oraz listę towarów z ceną, ilością i ilością.

Iść!

Pierwszą rzeczą, którą musisz zrobić, to utworzyć zewnętrzny plik przetwarzania. Przetwarzanie powinno obejmować trzy główne punkty:
  1. Atrybut „Object Link” o typie „DocumentLink.Invoice for Payment to Kupujący”
  2. Układ, który zostanie wydrukowany
  3. Funkcja eksportu „Print()”, która zwraca dokument arkusza kalkulacyjnego
Działania te widoczne są na rysunku 1

„Rysowanie układu”

Nasz układ będzie zawierał dwa obszary:
  1. Tytuł (nagłówek) dokumentu (w tym obszarze zostaną umieszczone nazwy organizacji i kontrahenta) oraz nagłówek tabeli (z nazwami kolumn)
  2. Tabela z towarami (kolumny z nazwą, ilością i kwotą)
Rysunek nr 2 przedstawia układ zewnętrznej formy drukarskiej. Należy pamiętać, że komórki tabeli i nagłówka zawierają parametry, a nie tylko tekst.

Funkcja „Drukuj()”

Formularz jest już prawie gotowy. Pozostaje tylko napisać programowe wypełnienie pól dokumentu arkusza kalkulacyjnego. Akcje te wykonywane są w module obiektu przetwarzania, w funkcji o nazwie „Drukuj”, która MUSI być eksportowalna.
Etap nr 1. Odbieranie danych do nagłówka, wypełnianie parametrów nagłówka i wysyłanie ich do dokumentu arkusza kalkulacyjnego TabularDocument = Nowy dokument tabelaryczny; Układ = GetLayout("Nasz układ"); Żądanie danych = Nowe żądanie("WYBIERZ | REPREZENTACJA(Faktura do zapłaty na rzecz kupującego. Kontrahent) JAKO Kontrahent, | REPREZENTACJA(Faktura do zapłaty na rzecz kupującego. Organizacja) JAKO Organizacja | OD | Dokument. Faktura do zapłaty na rzecz kupującego JAKO Faktura do zapłaty na rzecz kupującego | GDZIE | Faktura do zapłaty na rzecz kupującego. Link = &Link"); Żądanie danych.SetParameter("Link", ObjectLink); Nagłówek = DataRequest.Execute().Wybierz(); Cap.Next(); Obszar = Układ.GetArea("Nagłówek"); Area.Options.Fill(Nagłówek); TabularDocument.Output(Obszar); Etap nr 2. Odbieranie danych tabelarycznych i wyświetlanie produktów linia po linii
Data Request.Text = "SELECT | _Products.Line Number, | REPRESENTATION(_Products.Nomenclature) AS Nomenklatura, | _Products.Quantity, | _Products.Price, | _Products.Amount |FROM | Dokument.Faktura do zapłaty na rzecz kupującego.Produkty AS _Produkty |GDZIE | _Produkty. Link = &Link"; Pobierz = DataRequest.Execute().Wybierz(); Obszar = Układ.GetArea("Dane"); Podczas gdy Selection.Next() Loop Area.Parameters.Fill(Selection); TabularDocument.Output(Obszar); Koniec cyklu; Etap nr 3. Zwróć dokument arkusza kalkulacyjnego i funkcję drukowania zwróć dokument tabelaryczny;

Dodanie naszego zewnętrznego formularza drukującego do 1C

Przejdź do menu "Serwis - Zewnętrzne formy drukowe i obróbka - Zewnętrzne formy drukowe"

W otwartym oknie tworzenia elementu wykonaj następujące czynności:

  1. Ładowanie zewnętrznego pliku przetwarzania
  2. Wskazujemy, dla jakiego dokumentu konfiguracyjnego (lub katalogu) przeznaczony jest drukowany formularz
  3. Nagrywanie zmian

Drukujmy!

Otwórz dowolny dokument „Faktura do zapłaty na rzecz kupującego” (z wypełnioną częścią tabelaryczną „Produkty”, bo tam dostajemy dane do wypełnienia), kliknij przycisk „Drukuj”, w oknie, które się otworzy, wybierz NASZE wydrukowane formularz i kliknij „Drukuj”


UWAGA! Ten algorytm programowania nadaje się TYLKO do „zwykłej aplikacji”. Materiały do ​​wydrukowania dla konfiguracji zarządzanych przez aplikację są inne!

Plik formularza drukowanego pokazany w przykładzie może być

Dzień dobry.

Dziś opowiem Wam jak stworzyć zewnętrzne formularze drukowane dla konfiguracji „Zarządzanie Płacami i Personelem 3.0”. Jak wiadomo, ZUP 3.0 wykorzystuje bibliotekę standardowych podsystemów, przez co struktura przetwarzania wygląda zupełnie inaczej. Kiedy po raz pierwszy musiałem zrobić drukowany formularz dla BSP w zarządzanych formularzach (wówczas był to UT 11), pierwsze co zrobiłem, to udałem się na dysk ITS, aby znaleźć tam szczegółową dokumentację dotyczącą tego, jakie procedury eksportu, jakie parametry powinny być przetwarzane i jak to wszystko działa. Tutaj trochę mnie to rozczarowało, bo... wszystko jest tam napisane o tym jak powinny wyglądać procedury w module dokumentów, a w zewnętrznej formie drukowanej parametry procedury „druku” są przestawiane, więc musiałem szukać informacji w innych źródłach i majstrować przy podsystemie od środka .

Cóż, zacznijmy. To co otrzymamy na końcu może posłużyć jako szablon.

Krok pierwszy- oczywiste. Stwórzmy nowe przetwarzanie. Nadajmy mu dowolną nazwę: „Próbka wydruku”.

Krok drugi. Stwórzmy układ. Ponieważ mamy przykład testowy, stworzę najprostszy układ, bez jednego parametru.

Krok trzeci- Najbardziej interesujący. Otwórz moduł obiektowy i rozpocznij programowanie. Według BSP rejestrując przetwarzanie zewnętrzne, musi on (przetwarzanie) wskazać, czym może się zająć, z jakimi przedmiotami jest związany i jak się nazywa. Zapytany, jakie przetwarzanie może wykonać, powinien zwrócić listę poleceń - jest to tabela wartości. W naszym przypadku przetwarzanie może wyprowadzić jeden wydrukowany formularz, więc będzie tylko jedno polecenie. Aby wygenerować tabelę wartości, zdefiniujemy kilka procedur, które zawsze będą takie same we wszystkich drukach zewnętrznych:

//procedura przygotowująca strukturę tabeli poleceń

Funkcja GetTableCommand()

// Utwórz pustą tabelę poleceń i zawarte w niej kolumny
Polecenia = Nowa tabela wartości;

// Jak będzie wyglądał opis wydrukowanego formularza dla użytkownika
Commands.Columns.Add("Widok", NewTypeDescription("Row"));

// Nazwa naszego układu, abyśmy mogli rozróżnić wywoływane polecenie podczas przetwarzania wydruku
Commands.Columns.Add("Identyfikator", New TypeDescription("String"));

// Ustawia sposób wywoływania polecenia przetwarzania
// Możliwe opcje:
// - OpeningForm - w tym przypadku kolumna identyfikatora powinna wskazywać nazwę formularza, który system otworzy
// - CallClientMethod - wywołaj procedurę eksportu klienta z modułu formularza przetwarzania
// - Call ServerMethod - wywołaj procedurę eksportu serwera z modułu obiektu przetwarzania
Commands.Columns.Add("Użycie", New TypeDescription("Row"));

// Następny parametr określa, czy powiadomienie powinno być wyświetlane po rozpoczęciu i zakończeniu zadania przetwarzania. Nie ma to sensu podczas otwierania formularza
Commands.Columns.Add("ShowAlert", NewTypeDescription("Boolean"));

// Formularz drukowany musi zawierać ciąg PrintMXL
Commands.Columns.Add("Modyfikator", Nowy opis typu("Row"));

Zespół powrotny;

Funkcja końcowa

//Tworzy nowy wiersz w tabeli poleceń

Funkcja AddCommand(Tabela poleceń, Widok, Identyfikator, Użycie, ShowAlert = False, Modifier = "")
NewCommand = CommandTable.Add();
Nowa drużyna. Widok = Widok;
Nowa drużyna. Identyfikator= Identyfikator;
Nowa drużyna. Użycie = Użycie;
Nowa drużyna. ShowAlert= PokażAlert;
Nowa drużyna. Modyfikator= Modyfikator;
Funkcja końcowa

Eksport informacji o funkcjiOnExternalProcessing().
Parametry rejestracyjne = Nowa struktura;
ArrayDestinations = Nowa tablica;
Tablica przypisań.Add("Dokument.Zatrudnianie");
Parametry rejestracji.Insert("Widok", "Formularz wydruku"); //może - Wypełnienie obiektu, dodatkowy raport, utworzenie powiązanych obiektów...
Parametry rejestracji.Insert("Miejsce docelowe", Tablica miejsc docelowych);
Parametry rejestracji.Insert("Nazwa", "Hello World"); //nazwa, pod którą przetwarzanie zostanie zarejestrowane w katalogu przetwarzania zewnętrznego
Parametry rejestracyjne.Insert("Wersja", "1.0");
Parametry rejestracji.Insert("SafeMode", TRUE);
Parametry rejestracji.Insert("Informacja", "PRÓBKA");//tak będzie wyglądał dla użytkownika opis formularza do wydruku
CommandTable = GetCommandTable();
AddCommand(Table poleceń, „Hello World”, „Układ”, „CallServerMethod”, True, „MXL Print”);
Parametry rejestracji.Insert("Polecenia", CommandTable);
ReturnRegistrationParameters;
Funkcja końcowa

Właściwie będziesz musiał majstrować przy tym za każdym razem, gdy tworzysz nowy zewnętrzny formularz do druku. Z fragmentu kodu jasno wynika, że ​​połączymy go z dokumentem „Zatrudnienie”, w związku z czym napiszesz własny. Nasz wydrukowany formularz będzie się nazywał „Hello World”, ponownie zmienimy go na nasz własny. Tutaj wygodnie byłoby napisać w szablonie oczywisty billboard tak, aby przyciągał wzrok, aby nie zapomnieć go później poprawić; moim zdaniem przydaje się „Witaj świecie”. Wersja jest dla Ciebie, napisz co chcesz, wyświetli się jako element w katalogu przetwarzania zewnętrznego. Słowo „PRÓBKA” widoczne jest także jedynie w formie katalogu drukowanych formularzy. Następnie dodajemy polecenie, tutaj drugim parametrem jest nazwa przycisku, to właśnie ją zobaczy użytkownik w dokumencie w pozycji menu „drukuj”.

Ten zestaw trzech procedur wystarczy, aby przetwarzanie zostało dodane do katalogu przetwarzania zewnętrznego; cały ten mylący kod jest usługą i nie ma nic wspólnego z algorytmem drukowania. Tak naprawdę autorzy BSP zmusili nas do programowania w tak trudny sposób, że jeśli wcześniej od razu zaczynałeś pisać funkcję „Drukuj”, to teraz pisząc przetwarzanie od zera, a nie według próbki, stracisz czas na Serwis. Wcześniej parametry rejestracji były opcjonalne i były wskazywane w układzie przetwarzania, teraz wszystko wygląda znacznie poważniej. Pierwsze wrażenie, kiedy to zobaczyłem, było fajne, tyle możliwości, wszystko jest ujednolicone... ale w praktyce zawsze tworzę tylko jedno polecenie w jednym przetwarzaniu i łączę je z jednym dokumentem. Te. w rzeczywistości potrzebuję dwóch linii do rejestracji: nazwa obiektu, nazwa przycisku. A tu wszystko jest takie... no cóż, nie mnie to oceniać.

Krok czwarty- nie mniej interesujące.

Funkcja DRUKUJ?

Ale nie, teraz to nie jest funkcja, ale procedura.

Jak mogę odzyskać układ?

Wyślij go do funkcji modułu globalnego podsystemu drukowania.

Dobra

Oto tekst tej procedury:

Procedura Drukuj (tablica obiektów, zbiór formularzy PrintForm, PrintObjects, parametry wyjściowe) Eksport
Jeśli PrintManagement.NeedPrintLayout(CollectionPrintForms, „Layout”), to
Zarządzanie drukowaniem.Wyjście dokumentu tabelarycznego do kolekcji (kolekcja formularzy drukowania,
„Układ”, „Układ”,
GenerateTabDocumentSample(Tablica obiektów, Drukuj obiekty));
koniecJeśli;
Koniec procedury

Teraz dla wyjaśnienia. Pierwsza linijka procedury zawiera nieco niejasny warunek. Faktem jest, że gdy wywołujemy procedurę drukowania, system przekazuje nam tabelę wartości, która wskazuje, co mamy wydrukować. Zasadniczo funkcja ManagePrint.NeedPrintLayout(...) sprawdza obecność w tabeli wartości wiersza, w którym w kolumnie „Nazwa” znajduje się wiersz z nazwą układu. W praktyce w większości przypadków jest to bezużyteczne, bo... nasze przetwarzanie będzie w stanie wygenerować tylko jeden drukowany formularz. Te. Warunek ten można pominąć i nie będzie on miał wpływu na wydajność.

Następnie Zarządzanie drukowaniem.Wyjście TabularDocumentIntoCollection(...) - to dodaje układ tabelaryczny tam, gdzie jest to potrzebne, aby można go było następnie wyświetlić na ekranie. Jeśli chcesz wyświetlić dokument arkusza kalkulacyjnego we własnym oknie (nie w standardowym), to nie wywołuj tej procedury, a po prostu wpisz tutaj swój kod.

Dodam również, że procedura Drukuj wykonywana jest na kliencie i w razie potrzeby można tu otworzyć darmowy formularz w celu poproszenia użytkownika o dodatkowe informacje niezbędne do wydruku.

Następnie GenerateTabDocumentSample(...) to funkcja, którą musimy napisać w module przetwarzającym i która zwraca dokument tabelaryczny. W 100 na 100 przypadków będzie to rozwiązanie oparte na serwerze, ponieważ... musimy uzyskać wartość szczegółów z obiektów wymienionych w parametrze „Object Array”.

Krok piąty- tworzenie układu.

Hurra, w końcu zajmiemy się algorytmem układu, pobieraniem danych itp.

Ale w naszej próbce będziemy działać prozaicznie i nawet nie będę tutaj komentować)))

Funkcja GenerateTabDocumentSample(Tablica obiektów, Drukuj obiekty)
tabDoc = Nowy dokument tabelaryczny;
układ = GetLayout("Układ");

AreaHeader = Układ.GetArea("Nagłówek");
tabDoc.Output(nagłówek obszaru);

Wróć do TabDoc;
Funkcja końcowa

To wszystko, dziękuję za uwagę

Jak wiadomo - bez kartki papieru...żaden poważny biznes nie może się bez tego obejść. A kiedy mówimy, że 1C ma jakiś rodzaj dokumentów elektronicznych, od razu pojawia się pytanie, jak wydrukować je w formie papierowej.

Proces drukowania dokumentu elektronicznego 1C nazywa się formularzem drukowym 1C.

Każdy dokument może mieć kilka drukowanych formularzy 1C. Na przykład dokument Sprzedaż towarów i usług (tj. Sprzedaż) jest drukowany w drukowanych formularzach 1C: TORG-12, Faktura, List przewozowy, Certyfikat świadczonych usług i tak dalej.

Istotą drukowanego formularza 1C jest szablon (taki jak dokument Excel), w którym określone są zmienne. Podczas procesu drukowania zmienne są zastępowane tekstem z dokumentu elektronicznego. Szablon jest zwykle przechowywany w konfiguracji.

Problem ze zmianą standardowego drukowanego formularza 1C polega na tym, że zwykle nie zaleca się zmiany standardowej konfiguracji, w przeciwnym razie aktualizacja będzie trudniejsza. Dlatego pojawiły się różne metody korzystania z zewnętrznych form drukarskich 1C i zaczęto na nowo wymyślać koło.

Zewnętrzny formularz drukarski 1C to szablon druku, który jest przechowywany w jakiś sposób oddzielnie od samej konfiguracji.

Jednak to wszystko teoria. Jak stworzyć własny drukowany formularz? Albo jeszcze lepiej, jak wprowadzić zmiany w już istniejącym?

Jak drukowany jest dokument 1C

Aby wydrukować dowolny dokument 1C (który można wydrukować), należy kliknąć przycisk Drukuj w dokumencie. 1C zaproponuje wybranie z listy drukowanego formularza 1C dla tego dokumentu.

Na lewo od przycisku Drukuj zwykle znajduje się przycisk szybkiego dostępu do ostatnio wybranego formularza druku 1C.

Wynik wydruku wygląda następująco. Aby wydrukować go na drukarce, należy umieścić kursor w formularzu druku 1C, nacisnąć Ctrl+P lub przycisk drukarki na panelu przycisków lub w menu Plik/Drukuj.

Ustawienia drukowania (marginesy, orientacja arkusza itp.) znajdują się w menu Ustawienia pliku/strony. Można także skonfigurować ustawienia użytkownika, aby drukować bezpośrednio na drukarce.

Skąd pochodzi ta forma druku?

Gdzie znajduje się drukowany formularz 1C?

Przejdźmy do konfiguratora. Znajdź wymagany dokument w oknie konfiguracji. Rozbudujmy jego oddział Layouts. To oni po wydrukowaniu zamieniają się w formę drukarską 1C.

To jednak nie wystarczy – podczas drukowania zaproponowano nam wybór znacznie większej liczby opcji. Faktem jest, że wiele układów formularzy drukowanych 1C jest ukrytych w innym miejscu.

Wróćmy na górę okna konfiguracyjnego 1C. Otwórzmy gałąź Ogólne, a następnie gałąź Układy ogólne. To właśnie tam znajduje się większość aranżacji. Dotyczy to szczególnie drukowanych formularzy 1C - TORG 12, faktur itp., które są regulowane przez państwo.

Nawiasem mówiąc, nie trudno zauważyć, że zobaczysz kilka układów TORG12 lub Faktura. Dlaczego? Łatwo to wyjaśnić. Przepisy i wymagania zmieniają się okresowo. Nie możemy jednak po prostu zmienić tego samego układu - a jeśli już musimy wydrukować dokument z datą wcześniejszą niż data zmiany. Dlatego sporządza się kilka układów i w zależności od daty dokumentu stosuje się właściwy.

Ale to nie wszystko! Istnieją również układy zewnętrzne. Gdzie są przechowywane?

Wróćmy do trybu 1C Enterprise. Poprzez menu użytkownika z uprawnieniami administracyjnymi Operacje/Katalogi wybierz katalog przetwarzania zewnętrznego.

Linie tego katalogu, które mają postać Formularz wydruku, dodają opcje wydruku dla dokumentu wskazanego w tabeli Własność formularza drukowego (na zdjęciu jest to Sprzedaż towarów i usług).

Aby to zadziałało, musisz wykonać zewnętrzne przetwarzanie, które ma procedurę Print() w swoim module obiektowym o nazwie Eksport, która organizuje proces drukowania.
Ale wyprzedzamy samych siebie. Przyjrzyjmy się najpierw, jak zorganizowany jest układ formularza drukarskiego 1C.

Układ drukowanego formularza 1C

Układ formularza drukarskiego 1C wygląda następująco.

Jak widać jest on podzielony na bloki. Bloki mogą być poziome (nazwa po lewej stronie) lub pionowe (nazwa u góry).

Sam układ w obecnej postaci nie jest drukowany. Drukowane są poszczególne bloki. Programista w procedurze przetwarzania wydruku określa kolejność bloków oraz liczbę powtórzeń każdego bloku. W rezultacie powstaje drukowany formularz.

Aby przypisać obszar należy zaznaczyć kilka wierszy (lub kilka kolumn) i z menu wybrać opcję Tabela/Nazwy/Nadaj nazwę. Aby go usunąć, istnieje również polecenie Usuń nazwę.

Nazwa jest potrzebna, aby obszar był dostępny z poziomu kodu programu. Nazwę można przypisać nie tylko do wierszy czy kolumn, ale także po prostu do kilku komórek. Aby to zrobić, zaznacz komórki i wybierz to samo menu.

Jednak domyślnie niestandardowe nazwy komórek nie są wyświetlane. Aby je zobaczyć należy wybrać z menu opcję Tabela/Nazwy/Wyświetl nazwane komórki.

Tak więc dzisiaj dowiedzieliśmy się, że drukowany formularz 1C jest tworzony przy użyciu układu. Układ składa się z bloków – sprytnie zwanych obszarami.

Typowe (powszechnie stosowane) bloki do płyt drukarskich:

  • Nagłówek – wyświetlany jest tytuł dokumentu
  • Wiersz – wyświetlany jest jeden wiersz tabeli, blok ten powtarza się tyle razy, ile wierszy należy wydrukować
  • Stopka – wyświetlana jest końcówka dokumentu.

Teraz musimy uporać się z

 


Czytać:



Tworzenie struktury finansowej przedsiębiorstwa Rozważmy bardziej szczegółowo główne typy centralnych instytucji finansowych

Tworzenie struktury finansowej przedsiębiorstwa Rozważmy bardziej szczegółowo główne typy centralnych instytucji finansowych

Głównym zadaniem budowania struktury finansowej jest podział obowiązków i uprawnień pomiędzy menedżerami zarządzającymi przychodami...

Starożytne wieloryby urodziły się na lądzie Zygoriz: ogólny opis gatunku

Starożytne wieloryby urodziły się na lądzie Zygoriz: ogólny opis gatunku

Starożytne wieloryby rodziły na lądzie Przodkowie wielorybów rodzili swoje ząbkowane dzieci głową do przodu, podobnie jak gatunki zamieszkujące ląd. Rodziny archeocetów uwielbiały leżeć na...

Zarządzenie w sprawie zachęt dla pracowników

Zarządzenie w sprawie zachęt dla pracowników

Postawa administracji wobec pracownika i ocena jego działań znajdują odzwierciedlenie w zarządzeniu o awansie personelu. W nich...

Wniosek o rejestrację państwową zakończenia przez osobę fizyczną działalności jako indywidualny przedsiębiorca w związku z podjętą przez nią decyzją o zakończeniu tej działalności

Wniosek o rejestrację państwową zakończenia przez osobę fizyczną działalności jako indywidualny przedsiębiorca w związku z podjętą przez nią decyzją o zakończeniu tej działalności

Artykuł 22.3. Procedura rejestracji państwowej po zakończeniu przez osobę fizyczną działalności jako przedsiębiorca indywidualny 1....

obraz kanału RSS