Okna.  Wirusy.  Laptopy.  Internet.  Biuro.  Narzędzia.  Kierowcy

Załadowanie listy produktów do katalogu produktów jest częstym zadaniem, które może pojawić się zarówno na początku pracy z 1C, jak i później. Można to rozwiązać na różne sposoby. Proponuję prostą metodę wdrożenia - poprzez załadowanie z dokumentu arkusza kalkulacyjnego. Po drodze przyjrzymy się, jak utworzyć łatwą w obsłudze strukturę katalogów i skonfigurować hierarchię z wyborem w oparciu o pożądane właściwości produktu w 1c Trade Management 11.4 #UT11

Obejrzyj wideo - pokazuję wszystko wyraźnie w 1C Enterprise!

Najpierw przyjrzyjmy się strukturze pliku Excel. Każda z jej kolumn odpowiada szczegółom metryki towaru i dokładnie powtarza szablon utworzony na drugiej zakładce przetwarzania. Oznacza to, że w sumie są to dane, które wypełnimy dla każdej jednostki towaru. Wartość artykułu w moim przykładzie jest kluczowa i należy ją wypełnić. Wyjątkowo nie ma duplikatów. Nazwa i nazwa do druku duplikują się, ale mogą się różnić, jeśli wypełniona zostanie odpowiednia kolumna. Następnie przychodzą kolumny dla producenta i charakterystyczne właściwości produktu. Tworzę właściwości produktu w 1C, korzystając z dodatkowych szczegółów.

Niezbędne ustawienia. Musisz zaznaczyć dwa pola. Najpierw - w zakładce „Dane podstawowe i administracja” poszukaj „Ustaw dane podstawowe i sekcje”, kliknij „Nomenklatura”, „Sekcje księgowe” - włącz „Wiele typów nomenklatury”.

Po drugie, przejdź do zakładki „NSI i administracja”, poszukaj „Ustawienia ogólne” i włącz możliwość korzystania z dodatkowych szczegółów i informacji.

Strukturę całej nomenklatury stworzyłem w katalogu Typy Nomenklatury. Od tego katalogu będzie zależeć grupowanie towarów w katalogu Nomenklatury. Jest to wygodniejsze niż kiedyś w przypadku grup. Każdy produkt ma swoje charakterystyczne parametry. Na przykład obudowy komputerów mają różne współczynniki kształtu, a dyski twarde również mają parametr „format”. Jak dodać to do programu? Otwórzmy dowolny typ elementu na karcie dodatkowych szczegółów. Zakładka ta stanie się dostępna po włączeniu odpowiedniego ustawienia. Tutaj wprowadzamy dla każdego typu szczegóły, które są używane w przypadku tego produktu. Na przykład dysk twardy ma parametr „Interfejs”, a także ma parametr Form Factor, tylko obudowy mają swoje własne, a wartości w nim są inne, a nie takie same jak w przypadku dysków. Korzystając z tych dodatkowych szczegółów, możesz ustawić filtr, który bardzo szybko wybierze żądane pozycje na liście produktów. Filtr konfiguruje się poprzez dodanie dodatkowych szczegółów.

Wszystko powinno być jasne z ustawieniami. Jeśli nie, napisz, postaramy się to rozgryźć.

Otwórz przetwarzanie i przejdź do ładowania. Pierwsza zakładka zawiera ustawienia pobierania. W drugim tworzony jest szablon dla wybranego typu elementu; w ostatnim wyświetlany jest wynik ładowania. Dokonujemy ustawień, wstawiamy przygotowaną tabelę z produktami z Excela, klikamy - pobierz.

Jak załadować produkty z EXCEL do 1C, jak skonfigurować katalog Nomenklatury.

  • Podczas wymiany informacji pomiędzy kontrahentami (cenniki, raporty uzgodnieniowe itp.);
  • Aby ułatwić pracę operatorom w przypadkach, gdy główna księgowość prowadzona jest w 1C, a część w tabelach Excel;
  • Przy pierwszym wypełnieniu bazy danych.

Aby wykonać tę operację, możesz skorzystać zarówno ze standardowej funkcjonalności, dostępnej w ramach subskrypcji wsparcia technologii informatycznych (ITS), jak i niezależnie napisanego przetwarzania, realizowanego poprzez różne opcje połączenia. W naszym artykule postaramy się jak najdokładniej przeanalizować wszystkie możliwe przypadki i odpowiedzieć na większość istniejących pytań dotyczących ładowania danych z Excela do 1C.

Uniwersalny mechanizm

Na dyskach ITS, a także w portalu 1C, przechodząc do menu „Wsparcie technologiczne” -> „Uniwersalne raporty i przetwarzanie”, odpowiednie przetwarzanie znajduje się w folderze „Ładowanie danych z dokumentu arkusza kalkulacyjnego”.

Po uruchomieniu otwiera się formularz (rys. 1):

Jak widać z formularza umożliwia on przekazanie informacji do następujących obiektów konfiguracyjnych:

  1. Informator;
  2. Tabelaryczna część dokumentu lub podręcznika;
  3. Rejestr informacji.

W zależności od pozycji, w której ustawiony jest przełącznik, zmienia się pole wyboru obiektu.

Formularz tabelaryczny przetwarzania jest wypełniany po otwarciu pobranego pliku.

Typowe przetwarzanie obsługuje pobieranie z:

  • Opracowany przez specjalistów z 1C, format plikumXL;
  • Lisztaxls zapisane w formacieExcel 97-2003;
  • Plik tekstowytekst;
  • Stołydbf.

Ładowanie plików Excel o dużych rozmiarach może zająć dość dużo czasu, więc jeśli zakładamy, że ładowanie danych może przebiegać w kilku etapach lub wiesz na pewno, że będziesz musiał otwierać istniejący plik kilka razy, aby zaoszczędzić nerwy i czas, lepiej zapisać zawarte w nim informacje w formacie mxl. Można to zrobić bezpośrednio z formularza przetwarzania.

Ważne jest, aby zrozumieć, że jeśli w pliku źródłowym znajdują się grupy wierszy, podtytuły i notatki, należy je usunąć ręcznie.

Przejdźmy teraz do zakładki „Ustawienia” (ryc. 2):

Ryc.2

Dość często tabele Excela zawierają nagłówek z różnego rodzaju szczegółami i danymi (nazwa drukowanego formularza, dane kontrahenta, data i numer dokumentu przychodzącego, nazwy kolumn itp., Aby zapobiec ich przetwarzaniu). programu na formularzu należy podać w atrybucie „Pierwsza linia dokumentu arkusza kalkulacyjnego” pierwszą linię z przesyłanymi informacjami

Po wybraniu obiektu metadanych, do którego będą zapisywane informacje, tabelaryczna część zakładki „Ustawienia” zostanie automatycznie wypełniona nazwami szczegółów, opisami ich typów i innymi ważnymi informacjami. Osobną sekcję należy poświęcić rozważeniu kolumn części tabelarycznej zakładki „Ustawienia”.

Kolumny „Ustawienia”

Zaznaczenie – poprzez zaznaczenie lub odznaczenie checkboxa w linii określa się, czy odpowiedni atrybut zostanie wypełniony.

Reprezentacja atrybutu – tutaj zapisywany jest synonim (nazwa) atrybutu metadanych, taki jak określono w konfiguratorze.

Pole wyszukiwania - jeśli zaznaczysz to pole, przetwarzanie będzie wyszukiwać elementy na podstawie odpowiednich danych i jeśli się powiedzie, zmieni istniejące dane, dodatkową funkcją tego pola jest ochrona przed duplikatami;

Opis typów – wyświetla typ danych, jaki posiada dany atrybut metadanych.

Tryb rozruchu – oferuje trzy opcje do wyboru (rys. 3):

Ryc.3

  • Szukaj – zostanie przeprowadzone wyszukiwanie odpowiedniego elementu; w przypadku jego braku można utworzyć nowy;
  • Set – podrzędnie ustawiana jest określona wartość;
  • Oblicz – w tym przypadku wynik obliczenia wyrażenia określonego w kolumnie „Warunek połączenia/Wyrażenie dla wartości” zostanie ustawiony w polu tworzonego elementu.

W tym drugim przypadku aktywacja pola Wyrażenie spowoduje otwarcie formularza (rys. 4).

Ryc.4

Numer kolumny to pole służące do wskazania, która kolumna tabeli Excel ma zostać wypełniona danymi.

Wartość domyślna – dość często zdarza się, że pobrany plik nie zawiera wszystkich danych niezbędnych do zapisania elementu, wówczas informacje zawarte w tym polu zostaną uzupełnione.

Warunek połączenia/Wyrażenie dla wartości - częściowo poruszyliśmy już ten temat przy polach obliczeniowych, dodatkowo można określić warunek, według którego dane źródłowe będą synchronizowane.

Są to w zasadzie wszystkie informacje, które dostępne są w zakładce „Ustawienia”.

Aby nie tracić dużo czasu przy każdym ładowaniu, pisaniu korespondencji i wyrażeń, programiści udostępnili możliwość zapisania opcji konfiguracji do pliku z rozszerzeniem mxlz.

Poprawność przesyłanych danych można sprawdzić klikając na przycisk „Kontrola napełniania” (rys. 1). Następnie możesz rozpocząć proces pobierania. O pomyślnym zakończeniu procedury lub nietypowych sytuacjach zostaną Państwo osobno powiadomieni.

Istnieje inny mechanizm ładowania danych z Excela do baz informacji Zarządzającej i Handlowej. Jest mniej uniwersalna niż powyższa metoda, ale nie wymaga abonamentu ITS i wchodzi w zakres standardowej dostawy.

Przetwarzanie to znajdziemy w zakładce „Zakupy”, w menu „Serwis” nosi ono nazwę „Wczytanie cen dostawców z plików” (rys. 5)

Ryc.5

Formularz przetwarzania zawiera:

  1. Pole wyboru daty, które wskaże, w jakim czasie dana cena jest aktualna;
  2. Pole umożliwiające wybór kontrahenta, który przesłał swój cennik;
  3. Przycisk pozwalający wybrać rodzaj ustalanych cen;
  4. Część tabelaryczna, którą można wypełnić pobranymi danymi.

Kształt ten można zobaczyć na ryc. 6

Ryc.6

Wyjaśnienie na górze formularza wyjaśnia, jak korzystać z pierwszej zakładki formularza.

Po wybraniu kontrahenta (w zależności czy jest to dostawca, komisant czy sprzedawca) w tabeli dostępne będą dodatkowe kolumny dla każdego rodzaju ceny.

Podczas pracy za pośrednictwem interfejsu internetowego niektóre przeglądarki mogą wymagać instalacji dodatku do przeglądarki (ryc. 7). Musimy kliknąć przycisk „Rozpocznij instalację” i zrestartować nasze połączenie.

Ryc.7

Następnie za pomocą schowka będziemy mogli przenosić informacje z jednej tabeli do drugiej. Po wypełnieniu potrzebnych nam kolumn („Artykuł”, „Nazwa”, „Cena”) klikamy przycisk „Dalej” i przechodzimy do drugiej strony (ryc. 8)

Ryc.8

Program automatycznie wyszuka dopasowania w bazie danych, a jeśli nie zostaną znalezione, zaproponuje opcje usunięcia błędu. Wyglądem części tabelarycznej można sterować za pomocą przełącznika. Dodatkowo użytkownik może samodzielnie porównać elementy pobranego pliku z danymi dostępnymi w bazie danych.

  • Zarejestruj wszystko;
  • Rejestruj tylko te, które uległy zmianie w stosunku do tych, które już znajdują się w bazie.

W polu tekstowym możesz wpisać komentarz, który zostanie zapisany w dokumencie (rys. 9):

Ryc.9

Po zakończeniu przetwarzania:

  • Odpowiedni element zostanie utworzony w katalogu „Nomenklatura dostawców” (jeżeli nie istniał);
  • Zostanie z nim powiązany element katalogu „Nomenklatura”;
  • Zostanie utworzony i zaksięgowany dokument „Ustalanie cen towarów”, wskazujący: dostawcę, rodzaj cen oraz datę zapisania danych.

W podobny sposób działa przetwarzanie „Wczytanie produktów z plików zewnętrznych”.

Opcje przetwarzania transferu DIY

Głównym problemem przy wyodrębnianiu danych z pliku Excel jest to, że 1C nie ma wbudowanego jednoznacznego mechanizmu ich otwierania. Istnieje kilka opcji połączenia Excela z 1C:

  • Za pośrednictwem Microsoft ADODB - dość szybka metoda, która z reguły ma zastosowanie zarówno w przypadku opcji przechowywania baz danych w plikach, jak i w bazach danych klient-serwer;
  • Poprzez wykorzystanie pakietu Microsoft Office - metoda, która czasami zawodzi podczas pracy z bazami danych SQL, z reguły działa nieco wolniej niż pierwsza metoda, a także wymaga zainstalowanego pakietu Office;
  • Przez Libre Office - w odróżnieniu od poprzedniej metody jest darmowa, oprócz formatów xls i xlsx, obsługuje także własne tabele, ale wymaga zainstalowanego pakietu LibreOffice i pewnego przygotowania pobranego pliku (pierwsza linia tabeli musi zawierać nazwy kolumn).

Przyjrzyjmy się bliżej różnym metodom i opcjom.

Przez połączenie ADODB

Ogólnie rzecz biorąc, ADO oznacza obiekt danych ActiveX i służy do programowego dostępu do różnych baz danych. Największym problemem podczas tworzenia dowolnego połączenia z plikiem strony trzeciej (w tym Excelem) jest prawidłowe utworzenie ciągu połączenia.

W przypadku plików Excel dostępne są trzy opcje:

Opcje ciągu połączenia:

  • Dostawca – tutaj definiowany jest używany sterownik;
  • Źródło danych – określa nazwę pliku, który będziemy otwierać;
  • Rozszerzone właściwości – tutaj możesz określić, czy tabela ma mieć linię nagłówka (HDR = TAK oznacza, że ​​dane będą odczytywane z pierwszej linii, HDR = NIE – co z drugiej), czy plik ma być otwierany w trybie tylko do odczytu (ReadOnly) i kilka innych dodatkowych parametrów.

Po utworzeniu ciągu połączenia możemy połączyć się z pobranym plikiem (rys. 13)

Ryc.13

Teraz możemy za pomocą prostego żądania (rys. 14) rozpocząć pobieranie informacji z pobranego pliku.

W tym przypadku parametr „Arkusz” określa, z którym arkuszem ze skoroszytu Excela będziemy pracować.

Zbiór rekordów przechowywanych w arkuszu można odczytać za pomocą obiektu Recordset. W tym przypadku pierwszy rekord arkusza można uzyskać z parametrem BOF (początek pliku), a ostatni EOF (koniec pliku).

Za pomocą aplikacji Excel

Główna różnica w stosunku do poprzedniej metody polega na tym, że oprócz sterowników bazy danych na komputerze, na którym nawiązywane jest połączenie, musi być zainstalowany program Excel. Tylko w tym przypadku możemy zainicjować aplikację do odczytu danych z tabeli (Rysunek 16).

Ten obiekt COM ma kilka parametrów potomnych, ale głównym dla nas, biorąc pod uwagę aktualne warunki zadania, jest parametr WorkBooks (ryc. 17).

Po zainicjowaniu skoroszytu należy określić arkusz, z którego będą odczytywane dane (rys. 18).

Następnie możesz przeglądać wiersze i kolumny tabeli otwieranego pliku.

Kilka słów o możliwych błędach

Lwia część błędów podczas łączenia się z plikiem wynika z faktu, że plik jest już zajęty przez inną aplikację. Dobrze, jeśli na pasku zadań widzisz, że Excel działa na komputerze, ale jeśli Ty lub inny użytkownik otworzyliście go z przetwarzania zewnętrznego, można to ustalić tylko wizualnie za pomocą „Menedżera zadań”, więc nie zapomnij zamknąć połączenia przed zakończeniem procedury przeniesienia:

W przypadku pracy poprzez ADO (ryc. 19);

Ryc.19

  • W przypadku pracy z aplikacją (ryc. 20).

Ryż. 20.

Połączenie i procedurę zakończenia pracy z danymi najlepiej zorganizować w ramach konstrukcji Attempt-Exception-EndAttempt, wywołując opis błędu w wyjątkowej sytuacji. Choć czasami spowalnia to pracę, znacznie ułatwia ustalenie przyczyny błędu i ostatecznie sposobu jego wyeliminowania.

Materiał wideo na ten temat:


Wiele osób pracujących w programie 1C staje przed koniecznością załadowania danych z arkusza kalkulacyjnego Excel do 1C. Kiedy użytkownik może potrzebować takiego pobrania:
- generowany jest raport i zapisywany w Przewyższać, przetworzone. Przetworzone dane należy załadować do 1C w formie dokumentu (ruch, zwrot do dostawcy)
- znajduje się lista pozycji, które należy załadować do katalogu. Lista pozycji znajduje się w Excelu
- wszelkie inne dane, które należy załadować do części tabelarycznej dokumentu, księgi referencyjnej, rejestru informacyjnego
Poniżej instrukcja wczytania danych z Excela do części tabelarycznej dokumentu „Zwrot towaru od kupującego”.
Działanie 1. Przygotowanie dokumentu, do którego zostaną wczytane dane. Musisz utworzyć pusty dokument „Zwrot towaru od kupującego” i go zapisać.

Akt 2. Otwórz przetwarzanie zewnętrzne „Ładowanie danych z dokumentu arkusza kalkulacyjnego”.

Akt 3. W trakcie przetwarzania wybierz lokalizację, do której załadujemy dane.

Akt 4. Skonfiguruj opcje rozruchu. Aby poćwiczyć, wykonaj wszystko tak, jak pokazano na obrazku.

Działanie 5. Kopiowanie danych z Excela do zakładki „Dokument arkusza kalkulacyjnego” w celu przetworzenia (jak na rysunku). Na czerwono podświetlone są dwa przyciski: „Kontrola” napełniania (pokazuje błędy, np. w przypadku błędnego podania jednostki miary ładowanego towaru) i „Załaduj” (wykonuje załadunek).

Im mniej parametrów określisz do przesłania, tym mniejsze prawdopodobieństwo wystąpienia błędów podczas przesyłania, ale tym więcej danych będziesz musiał ręcznie poprawić w przesyłanym dokumencie.

Właściwie ona sama przetwarzanie ładowania danych z Excela do 1C

Ta metoda jest prosta. Jej istotą jest przedmiot Dokument tabelaryczny ma metody:

  • Zanotować (< ИмяФайла>, < ТипФайлаТаблицы >) wgrać dane do pliku;
  • Czytać (< ИмяФайла>, < СпособЧтенияЗначений >) aby załadować dane z pliku.

Uwaga!

Metoda Write() jest dostępna zarówno na kliencie, jak i na serwerze. Metoda Read() jest dostępna tylko po stronie serwera. Trzeba o tym pamiętać
podczas planowania interakcji klient-serwer.

Spójrzmy na przykład zapisywania dokumentu arkusza kalkulacyjnego do pliku. Konieczne jest utworzenie i wypełnienie obiektu TabularDocument w dowolny sposób oraz rozładunek do pliku odbywa się za pomocą tylko jednej linii:

TabDoc . Write(FilePath, TabularDocumentFileType. XLSX);

Tutaj TabDoc- wygenerowany dokument arkusza kalkulacyjnego, Ścieżka do pliku— nazwa pliku do przesłania, TabularnyDocumentFileType.XLSX— format utworzonego pliku. Obsługiwane są następujące formaty programu Excel:

  • XLS95 – format Excela 95;
  • XLS97 – format Excela 97;
  • XLSX to format programu Excel 2007.

TabDoc = Nowy dokument tabelaryczny;
TabDoc . Read(PathToFile, metoda ReadingTabularDocumentValues.Value);

Tutaj Ścieżka do pliku— ścieżka do pobranego pliku Excel. Metoda odczytu wartości dokumentu tabelarycznego.Wartość określa, jak należy interpretować dane odczytane z dokumentu źródłowego. Dostępne opcje:

  • Oznaczający;
  • Tekst.

Wymiana poprzez OLE

Wymiana za pośrednictwem technologii automatyzacji OLE jest prawdopodobnie najczęstszą opcją programowej pracy z plikami Excel. Pozwala na wykorzystanie wszystkich funkcjonalności jakie daje Excel, ale jest wolniejsza w porównaniu do innych metod. Do wymiany poprzez OLE wymagana jest instalacja MS Excel:

  • Na komputerze użytkownika końcowego, jeśli wymiana następuje po stronie klienta;
  • Na komputerze serwera 1C:Enterprise, jeśli wymiana następuje po stronie serwera.

Przykład rozładunek:

// Utwórz obiekt COM
Excel = Nowy obiekt COM("Excel.Application");
// Wyłącz ostrzeżenia i pytania
Przewyższać . DisplayAlerts = False;
// Utwórz nową książkę
Książka = Excel. Zeszyty ćwiczeń. Dodać();
// Pozycja na pierwszym arkuszu
Arkusz = Książka. Arkusze ćwiczeń(1);

// Zapisz wartość do komórki
Arkusz . Komórki (NumerWiersza,NumerKolumny). Wartość = Wartość Komórki;

// Zapisz plik
Książka . Zapisz jako (nazwa pliku);


Przewyższać . Zrezygnować();
Excel = 0;

Przykłady czytanie:

// —— OPCJA 1 ——

// Utwórz obiekt COM
Excel = Nowy obiekt COM("Excel.Application");
// Otwórz książkę
Książka = Excel. Zeszyty ćwiczeń. Otwarte( ŚcieżkaKFile);

Arkusz = Książka. Arkusze ćwiczeń(1);

//Zamykam książkę
Książka . Zamknij(0);

// Zamknij Excel i zwolnij pamięć
Przewyższać . Zrezygnować();
Excel = 0;

// —— OPCJA 2 ——

// Otwórz książkę
Książka = GetCOMObject( ŚcieżkaKFile);
// Pozycjonowanie na żądanym arkuszu
Arkusz = Książka. Arkusze ćwiczeń(1);

// Odczytaj wartość komórki. Zwykle tutaj znajduje się pętla przeglądania komórek
Wartośćkomórki = Arkusz. Komórki (NumerWiersza,NumerKolumny). Wartość;

//Zamykam książkę
Książka . Aplikacja. Qui T();

Dla objazd W przypadku wszystkich wypełnionych wierszy arkusza programu Excel można zastosować następujące techniki:

// —— OPCJA 1 ——
Liczba rzędów = arkusz. Komórki(1 , 1 ). Komórki specjalne(11). Wiersz;
Dla RowNumber = 1 według liczby cykli wierszy
Wartośćkomórki = Arkusz. Komórki (NumerWiersza,NumerKolumny). Wartość;
Koniec cyklu;

// —— OPCJA 2 ——
Numer wiersza = 0;
Podczas gdy Cykl Prawdy
NumerWiersza =NumerWiersza + 1 ;
Wartośćkomórki = Arkusz. Komórki (NumerWiersza,NumerKolumny). Wartość;
Jeśli NIE wypełniono wartością (CellValue) Następnie
Poronić;
koniecJeśli;
Koniec cyklu;

Zamiast po kolei przechodzić przez wszystkie wiersze arkusza, możesz to zrobić zrzuć wszystkie dane do tablicy i pracować z nim. To podejście będzie szybsze przy czytaniu dużej ilości danych:

RazemKolumny = Arkusz. Komórki(1 , 1 ). Komórki specjalne(11). Kolumna;
RazemWiersze = Liść. Komórki(1 , 1 ). Komórki specjalne(11). Wiersz;

Region = Liść. Zakres (arkusz. Komórki (1, 1), Arkusz. Komórki (TotalRows,TotalColumns));
Dane = Region. Wartość. Rozładować();

Poniższa tabela przedstawia najpopularniejsze właściwości i metody pracy z Excelem poprzez OLE:

Działanie Kod Komentarz
Praca z aplikacją
Ustawianie widoczności okna aplikacji Przewyższać . Widoczny= Fałsz;
Ustawianie trybu wyjścia ostrzeżenia (wyświetlanie/nie wyświetlanie) Przewyższać . Wyświetlanie alertów= Fałsz;
Zamykanie aplikacji Przewyższać . Zrezygnować();
Praca z książką
Tworzenie nowej książki Książka = Excel. Zeszyty ćwiczeń. Dodać();
Otwieranie istniejącego skoroszytu Książka = Excel. Zeszyty ćwiczeń. Otwórz (nazwa pliku);
Ratowanie książki Książka . Zapisz jako (nazwa pliku);
Zamykanie książki Książka . Zamknij(0);
Praca z arkuszem
Ustawianie bieżącego arkusza Arkusz = Książka. Arkusze robocze (Numer arkusza);
Ustalenie nazwy Arkusz . Imię = Imię;
Konfigurowanie ochrony Arkusz . Chronić();
Usuwanie ochrony Arkusz . Wyłącz ochronę();
Ustawianie orientacji strony Arkusz . Konfiguracja strony. Orientacja = 2; 1 - portret, 2 - krajobraz
Ustawianie lewej krawędzi Arkusz . Konfiguracja strony. LewyMargines = Excel. Centymetry na punkty (centymetry);
Ustawianie górnego limitu Arkusz . Konfiguracja strony. GórnyMargines = Excel. Centymetry na punkty (centymetry);
Ustawianie właściwej granicy Arkusz . Konfiguracja strony. RightMargin = Excel. Centymetry na punkty (centymetry);
Ustawianie dolnego limitu Arkusz . Konfiguracja strony. BottomMargin = Excel. Centymetry na punkty (centymetry);
Praca z wierszami, kolumnami i komórkami
Ustawianie szerokości kolumny Arkusz . Kolumny(NumerKolumny). Szerokość kolumny = szerokość;
Usuń linię Arkusz . Wiersze(Numerwiersza). Usuwać();
Usunięcie kolumny Arkusz . Kolumny(NumerKolumny). Usuwać();
Usuń komórkę Arkusz . Komórki (NumerWiersza,NumerKolumny). Usuwać();
Ustawianie wartości Arkusz . Komórki (NumerWiersza,NumerKolumny). Wartość = wartość;
Łączenie komórek Arkusz . Zakres (arkusz. Komórki (Numer wiersza, Numer kolumny), Arkusz. Komórki (Numer wiersza 1, Numer kolumny 1)). Łączyć();
Ustawianie czcionki Arkusz . Komórki (NumerWiersza,NumerKolumny). Chrzcielnica. Nazwa = nazwa czcionki;
Ustawianie rozmiaru czcionki Arkusz . Komórki (NumerWiersza,NumerKolumny). Chrzcielnica. Rozmiar = rozmiar czcionki;
Ustawianie pogrubionej czcionki Arkusz . Komórki (NumerWiersza,NumerKolumny). Chrzcielnica. Pogrubiony = 1 ; 1 - pogrubiony, 0 - normalny
Ustawianie kursywy Arkusz . Komórki (NumerWiersza,NumerKolumny). Chrzcielnica. italski = 1 ; 1 - kursywa, 0 - normalny
Ustawianie podkreślonej czcionki Arkusz . Komórki (NumerWiersza,NumerKolumny). Chrzcielnica. Podkreślać = 2 ; 2 - podkreślone, 1 - nie

Aby dowiedzieć się, którą właściwość należy zmienić lub którą metodę wywołać, możesz użyć makra Przewyższać. Jeśli zarejestrujesz makro z wymaganymi działaniami, możesz następnie sprawdzić kod VBA zarejestrowanego makra.

Korzystanie z COMSafeArray

Podczas pobierania dużych ilości danych z 1C do Excela możesz użyć obiektu do przyspieszenia COMSafeArray. Zgodnie z definicją zaczerpniętą z asystenta składni, COMSafeArray jest opakowaniem obiektu na tablicy wielowymiarowej Bezpieczna tablica z KOM. Umożliwia tworzenie i używanie SafeArray do wymiany danych pomiędzy obiektami COM. Mówiąc najprościej, jest to tablica wartości, które można wykorzystać do wymiany pomiędzy aplikacjami wykorzystującymi technologię OLE.

// Utwórz COMSafeArray
ArrayCom = New COMSafeArray("VT_Variant" , TotalColumns, TotalRows);
// Wypełnij COMSafeArray
Dla Strona = 0 według TotalLines - 1 cykl
Dla Liczba = 0 Łączna liczba kolumn - 1 cykl
ArrayCom . SetValue(liczba, strona, wartość);
Koniec cyklu;
Koniec cyklu;
// Przypisanie obszaru arkusza Excel do wartości z COMSafeArray
Arkusz . Zakres (arkusz. Komórki (1, 1), Arkusz. Komórki (Suma wierszy, Suma kolumn)). Wartość = ArrayCom;

Wymiana poprzez ADO

Plik Excel wymieniany za pośrednictwem ADO jest bazą danych, do której można uzyskać dostęp za pomocą zapytań SQL. Instalacja programu MS Excel nie jest wymagana, należy jednak posiadać sterownik ODBC, za pomocą którego będzie zapewniony dostęp. Używany sterownik ODBC jest określany poprzez określenie parametrów połączenia z plikiem. Zazwyczaj wymagany sterownik jest już zainstalowany na komputerze.

Wymiana przez ADO jest zauważalnie szybsza niż wymiana przez OLE, ale przy wgrywaniu nie ma możliwości wykorzystania funkcjonalności Excela do projektowania komórek, układania stron, ustawiania formuł itp.

Przykład rozładunek:


Połączenie = Nowy obiekt COM("ADODB.Połączenie");


Mieszanina . Ciąg połączenia = "

|Źródło danych=" + NazwaPliku + ";
;
Mieszanina . Otwarte(); // Otwórz połączenie

// Utwórz obiekt COM dla polecenia
Polecenie = Nowy obiekt COM("ADODB.Polecenie");
Zespół

// Przypisywanie tekstu polecenia w celu utworzenia tabeli
Zespół . Tekst polecenia = „UTWÓRZ TABELĘ [Arkusz 1] (kolumna 1 znak (255), data kolumny 2, wartość całkowita kolumny 3, liczba zmiennoprzecinkowa kolumny 4)”;
Zespół . Wykonać(); // Wykonaj polecenie

// Przypisywanie tekstu polecenia w celu dodania wiersza tabeli
Zespół . Tekst polecenia = „WSTAW DO [Arkusza 1] (Kolumna 1, Kolumna 2, Kolumna 3, Kolumna 4) wartości („abvwhere”, „8/11/2017”, „12345”, „12345,6789”)”;
Polecenie.Wykonaj(); // Wykonaj polecenie

// Usuń polecenie i zamknij połączenie
Polecenie = Niezdefiniowane;
Mieszanina . Zamknąć();
Połączenie = Nieokreślone;

Aby utworzyć nowy arkusz i ukształtować jego strukturę, możesz użyć obiektów ADOX.Katalog I ADOX.Tabela. W tym przypadku kod będzie wyglądał następująco:

// Tworzenie obiektu COM do pracy z książką
Książka = Nowy obiekt COM("ADOX.Catalog");
Książka . ActiveConnection = połączenie;

// Utwórz obiekt COM do pracy ze strukturą danych w arkuszu
Tabela = Nowy obiekt COM("ADOX.Table");
Tabela . Nazwa = "Arkusz1" ;
Tabela . Kolumny. Dołącz("Kolumna1", 202);
Tabela . Kolumny. Dołącz("Kolumna2", 7);
Tabela . Kolumny. Dołącz("Kolumna3", 5);
Tabela . Kolumny. Dołącz("Kolumna 4", 5);

// Utwórz w skoroszycie arkusz o opisanej strukturze
Książka . Stoły. Dołącz (tabela);
Tabela = Niezdefiniowana;
Książka = Niezdefiniowana;

W powyższym przykładzie w metodzie

Tabela . Kolumny. Dodać(„Kolumna 1”, 202);

drugi parametr określa typ kolumny. Parametr jest opcjonalny, oto niektóre wartości typów kolumn:

  • 5 - adDouble;
  • 6 - reklamaWaluta;
  • 7 - data dodania;
  • 11 - adBoolean;
  • 202 - adVarWChar;
  • 203 - adLongVarWChar.

Przykład czytanie:

// Utwórz obiekt COM dla połączenia
Połączenie = Nowy obiekt COM("ADODB.Połączenie");

// Ustaw ciąg połączenia
Mieszanina . Ciąg połączenia = "
|Dostawca=Microsoft.ACE.OLEDB.12.0;
|Źródło danych=" + NazwaPliku + ";
|Rozszerzone właściwości=""Excel 12.0 XML;HDR=TAK"";";
Mieszanina . Otwarte(); // Otwórz połączenie

// Utwórz obiekt COM, aby otrzymać wybór
Wybierz = Nowy obiekt COM("ADODB.Recordset");
Tekst żądania = „WYBIERZ * Z [Arkusz1$]”;

// Wykonaj żądanie
Próbka . Otwórz (tekst zapytania, połączenie);

// Pomiń przykładowy wynik
To jeszcze nie wybór. Pętla EOF().
Wartość kolumny 1 = wybór. Pola. Element („Kolumna 1”). Wartość ; // Dostęp według nazwy kolumny
Kolumna2Wartość = Wybór. Pola. Pozycja (0). Wartość; // Dostęp według indeksu kolumny
Próbka . Przesuń Dalej();
Koniec cyklu;

Próbka . Zamknąć();
Próbka = Niezdefiniowana;
Mieszanina . Zamknąć();
Połączenie = Nieokreślone;

W ciągu połączenia parametr HDR określa, jak będzie postrzegana pierwsza linia na arkuszu. Możliwe opcje:

  • TAK - pierwsza linia traktowana jest jako nazwa kolumny. Dostęp do wartości można uzyskać po nazwie i indeksie kolumny.
  • NIE - pierwsza linia traktowana jest jako dane. Dostęp do wartości można uzyskać tylko poprzez indeks kolumny.

Te przykłady obejmują tylko kilka obiektów ADO. Model obiektowy ADO składa się z następujących obiektów:

  • połączenie;
  • Rozkaz;
  • zestaw rekordów;
  • Nagrywać;
  • Pola;
  • Strumień;
  • Błędy;
  • parametry;
  • Właściwości.

Przesyłaj bez programowania

Aby zapisać dane z 1C do Excela, nie zawsze zaleca się uciekanie się do programowania. Jeśli w trybie Enterprise użytkownik może wyświetlić dane wymagane do pobrania, wówczas można je zapisać w Excelu bez programowania.

Aby zapisać dokument arkusza kalkulacyjnego (na przykład wynik raportu), możesz wywołać polecenie Ratować Lub Zapisz jako... menu główne.

W oknie, które zostanie otwarte, musisz wybrać katalog, nazwę i format zapisanego pliku.

Aby zapisać dane z list dynamicznych (na przykład listy pozycji), należy:

  1. Wyprowadź dane do dokumentu arkusza kalkulacyjnego za pomocą polecenia Więcej ⇒ Lista...;
  2. Zapisz dokument arkusza kalkulacyjnego w wymaganym formacie.

W 1C 8.3 możliwe jest zbiorcze załadowanie listy z dokumentu arkusza kalkulacyjnego, na przykład z pliku Excel.

Do załadunku używamy przetwarzania zewnętrznego Ładowanie danych z pliku TabularDocument.epf dla zarządzanych formularzy (8.2 i 8.3), które można pobrać . Jest uniwersalny i powinien nadawać się do dowolnej konfiguracji napisanej dla zarządzanej aplikacji.

  • Jeśli jesteś programistą i chcesz opracować „własny” plik do pobrania z Excela, szczegółowe instrukcje dotyczące;
  • Przykład załadowania cennika w 1C Trade Management można znaleźć pod adresem.

Aby rozpocząć przetwarzanie zewnętrzne należy przejść do menu „Plik”, następnie „Otwórz” i wybrać to przetwarzanie z katalogu, w którym zostało zapisane:

Przetwarzanie Ładowanie danych z dokumentu arkusza kalkulacyjnego 1C 8.3 (formularze zarządzane)

Po otwarciu przetwarzania w 1C możesz rozpocząć z nim pracę. Przede wszystkim musimy zdecydować, gdzie i co pobierzemy:

Chcę podać przykład w katalogu „”. Utworzyłem plik danych w formacie xls.

Processing może także ładować pliki w następującym formacie:

  • dowolny inny format, z którego można kopiować dane.

Tak wygląda plik Excel z danymi źródłowymi, który wrzucimy do skoroszytu „Nomenklatura”:

Uzyskaj 267 lekcji wideo na 1C za darmo:

Nie zapisałem wszystkich pól w katalogu, ponieważ to wystarczy, aby zrozumieć zasadę ładowania. Dodatkowo te dane wystarczą, aby rozpocząć pracę na tych stanowiskach.

Pozycje te nie znajdują się jeszcze w bazie danych informacyjnych 1C i teraz je tam prześlemy.

Kliknij na ikonę „Otwórz” (na rysunku oznaczoną jako „Wybierz źródło”) i wybierz plik z danymi. Możesz zastosować proste kopiowanie informacji. Mój przykładowy plik można pobrać. Dane zostaną automatycznie załadowane do przetwarzania. Sprawdźmy teraz, czy poprawnie uzupełniliśmy nasze dane. W tym celu należy kliknąć przycisk „Kontrola napełniania”.

Jak widać, mamy kilka błędów! Wyeliminujemy to. Przejdź do zakładki „Ustawienia”:

Zanim poprawię błędy, chcę zwrócić uwagę na jeden ważny szczegół. Program początkowo nie wie, w którym polu szukać elementu katalogu, jeśli już tam jest. Dlatego musi to podkreślić. Wolę wyszukiwać według kodu, ponieważ jest on zwykle unikalny. W kolumnie „Pole wyszukiwania” w wierszu „Kod” umieść znacznik wyboru. Teraz, jeśli zostanie znaleziony rekord z takim kodem, zostanie on zastąpiony, w przeciwnym razie zostanie utworzony.

Ważny! Jeśli nie określisz pola wyszukiwania, mogą pojawić się zduplikowane elementy. Zwłaszcza po drugim pobraniu podobnego pliku!

Zobaczmy teraz, dlaczego „Jedność” przeklina na boisku. Faktem jest, że jednostki miary w 1C 8.3 są przechowywane w osobnym katalogu, a przetwarzanie domyślnie szuka tej jednostki według nazwy. Ale w rzeczywistości jednostka słowa jest zapisana w polu „Imię i nazwisko”.

Niestety przetwarzanie może wyszukiwać jedynie po „Nazwie” i „Kodzie” (dla programisty możliwości są szersze). Jeśli zwrócisz uwagę na powyższe zdjęcia, zobaczysz, że mam kod w kolumnie „Jednostka”. Podczas przetwarzania należy wskazać, że wyszukiwanie powinno odbywać się według kodu. Kliknij dwukrotnie kolumnę „Warunek komunikacji” obok „Jednostki” i zmień ją na „Kod”.

Zobaczmy teraz, co mówią nam o „Usłudze” na liście błędów. Jeszcze jedna ważna uwaga. Kolumny w pliku muszą być ułożone ściśle w tej samej kolejności, co wiersze pól katalogu. A dla nas „” znajduje się na samym dole, a w pliku po kolumnie „Komentarz”.

Aby przesunąć linię „Typ elementu” w górę, u góry formularza znajdują się niebieskie strzałki. Za pomocą strzałki „W górę” podnieś żądaną linię i umieść ją pod „Komentarzem”.

Kliknij „Wczytaj dane” i tym razem wszystko przebiegnie bez błędów:

Samouczek wideo na temat ładowania produktów do 1C z plików Excel:



Jeśli zauważysz błąd, zaznacz fragment tekstu i naciśnij Ctrl+Enter
UDZIAŁ: