Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

Excel Source

Termin Definicja
Excel Source

Excel Source to komponent przepływu danych SSIS wczytujący dane bezpośrednio z pliku arkusza kalkulacyjnego.

Rola Excel Source w przepływie danych SSIS

Excel Source jest komponentem zadania Data Flow w SQL Server Integration Services (SSIS). Jego zadaniem jest odczytanie danych z pliku skoroszytu programu Microsoft Excel i przekazanie ich do kolejnych elementów przepływu, na przykład do komponentu przekształcającego, warunku rozgałęzienia albo miejsca docelowego SQL Server. Komponent nie zapisuje samodzielnie danych do bazy i nie zastępuje tabeli docelowej. Odpowiada za utworzenie strumienia wierszy na podstawie arkusza, nazwanego zakresu lub zapytania zdefiniowanego w konfiguracji źródła.

Konfiguracja Excel Source korzysta z Excel Connection Manager, w którym wskazuje się ścieżkę pliku, wersję formatu oraz sposób dostępu do danych. W zależności od zainstalowanego dostawcy możliwa jest obsługa starszych plików XLS albo nowszych skoroszytów XLSX. W praktyce odczyt realizuje dostawca OLE DB, najczęściej Microsoft ACE OLE DB, a nie sam komponent SSIS. Z tego powodu poprawna konfiguracja połączenia zależy zarówno od ustawień pakietu, jak i od dostępności odpowiedniego sterownika w systemie wykonującym pakiet.

Arkusz, zakres i metadane kolumn

Źródłem dla Excel Source może być konkretny arkusz, nazwany zakres albo zakres komórek zapisany w skoroszycie. Nazwy arkuszy są rozróżniane przez dostawcę Excela w sposób charakterystyczny dla tego formatu, dlatego w konfiguracji często pojawia się zapis z nazwą arkusza zakończoną znakiem dolara. Można również użyć polecenia SQL dostępnego dla wybranego połączenia, jeśli potrzebny jest ograniczony wybór kolumn lub filtrowanie obsługiwane przez dostawcę. Zakres odczytu powinien być ustalony świadomie, ponieważ puste komórki, dodatkowe nagłówki i notatki umieszczone nad tabelą zmieniają interpretację danych.

Podczas otwierania źródła SSIS pobiera metadane kolumn, między innymi nazwy, typy danych, długości oraz informację o możliwości występowania wartości pustych. Excel nie narzuca jednak jednolitego typu dla całej kolumny tak rygorystycznie jak relacyjna tabela. Jeżeli w jednej kolumnie znajdują się liczby, tekst i daty, dostawca może przyjąć typ na podstawie próbkowanych wierszy, a wartości innego rodzaju zwrócić jako puste albo zgłosić problem konwersji. Ustawienie pierwszego wiersza jako nagłówka musi odpowiadać rzeczywistej budowie arkusza; w przeciwnym razie pierwszy rekord może zostać potraktowany jako nazwa kolumn, a nie jako dane.

Typowe problemy z odczytem plików Excel

Jedną z częstych przyczyn nieudanego uruchomienia pakietu jest różnica między architekturą procesu a zainstalowanym dostawcą OLE DB. Pakiet wykonywany w trybie 64-bitowym wymaga dostępnego 64-bitowego sterownika, natomiast starsze środowiska mogą zawierać wyłącznie wersję 32-bitową. W takiej sytuacji projekt może otwierać plik w środowisku deweloperskim, ale kończyć się błędem na serwerze wykonawczym. Diagnoza powinna obejmować nazwę dostawcy, architekturę uruchomienia SSIS oraz wersję pliku, zamiast ograniczać się do ponownego wskazania tego samego skoroszytu.

Problemy pojawiają się także wtedy, gdy arkusz jest otwarty przez inną aplikację, ma zmienioną nazwę kolumny albo zawiera dane o niejednolitym formacie. Daty zapisane jako tekst nie muszą zostać rozpoznane jako typ daty, a identyfikatory z zerami wiodącymi mogą utracić swój pierwotny zapis, jeżeli dostawca potraktuje kolumnę jako liczbową. Po Excel Source warto stosować jawne konwersje w SSIS, sprawdzać wartości NULL i kontrolować długości tekstu przed zapisaniem do celu. Przy zmianie układu arkusza może być konieczne odświeżenie metadanych komponentu, ponieważ wcześniejsza definicja kolumn nie aktualizuje się automatycznie w każdej konfiguracji pakietu.

Kontrola przepływu danych przed zapisem do celu

Przed użyciem Excel Source w zadaniu produkcyjnym należy sprawdzić, czy plik znajduje się pod ścieżką dostępną dla konta uruchamiającego pakiet, a nie tylko dla użytkownika projektującego rozwiązanie. Warto potwierdzić nazwę arkusza, obecność nagłówków, zakres danych oraz oczekiwane typy kolumn. Jeżeli pliki są dostarczane cyklicznie, kontrola powinna wykrywać brak pliku, pusty arkusz, zmianę rozszerzenia i zmianę liczby kolumn. Dobrą praktyką jest kierowanie błędnych wierszy do osobnego wyjścia błędów oraz rejestrowanie liczby odczytanych i zapisanych rekordów, aby można było wykryć utratę danych podczas konwersji.

W przypadku problemów z laptopem lub komputerem PC, na którym przygotowywany albo uruchamiany jest pakiet SSIS, Sama naprawa sprzętu nie zmienia konfiguracji Excel Source, ale może przywrócić działanie systemu, dysku, pamięci RAM lub środowiska Windows potrzebnego do uruchomienia sterownika i pakietu. Po usunięciu usterki sprzętowej należy ponownie zweryfikować dostępność dostawcy OLE DB, uprawnienia do pliku oraz zgodność architektury procesu z używaną instalacją SSIS.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę