Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Zapytania SQL, widoki, Crystal, definicje filtrów, szybkich raportów, wydruków, API, Hydra, .NET

Moderator: mikey

funmp
Posty: 91
Rejestracja: 11 kwie 2013, 14:46
Rola: Inny
Wersja: 2023

Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Post autor: funmp »

Cześć,

Próbuję uruchomić procedurę bezpośrednio z poziomu definicji wykresu.
Niestety, podczas próby uruchomienia pojawia się następujący błąd:

błąd 1021
Znalezienie biblioteki nie udało się.
Sprawdź, czy wszystkie biblioteki DLL są dostępne.

Rejestr.bat z uprawnieniami administratora był uruchamiany.



Tak robię wywołanie:
EXEC raportrw;
Tak też próbowałem:
EXEC dbo.raportrw;

Oto procedura, która po stronie serwera działa bez zarzutu:

Kod: Zaznacz cały

CREATE PROCEDURE raportrw
AS
BEGIN
    DECLARE @DynamicPivotQuery NVARCHAR(MAX);
    DECLARE @ColumnNames NVARCHAR(MAX);
    DECLARE @Years NVARCHAR(MAX);

    SET @Years = '2025';
    
    DECLARE @Periods TABLE (
        Period NVARCHAR(20)
    );

    INSERT INTO @Periods (Period)
    SELECT DISTINCT
        CONCAT(YEAR(DATEADD(day, TraNag.TrN_Data2, '18001228')), '_Tydz_', FORMAT(DATEPART(WEEK, DATEADD(day, TraNag.TrN_Data2, '18001228')), '00')) AS Period
    FROM 
        CDN.TraElem AS TraElem
    INNER JOIN 
        CDN.TraNag AS TraNag
    ON 
        TraNag.TrN_GIDNumer = TraElem.TrE_GIDNumer
    WHERE 
        TraElem.TrE_GIDTyp = 1616
        AND TraElem.TrE_GIDFirma = 129121
        AND YEAR(DATEADD(day, TraNag.TrN_Data2, '18001228')) IN (2025);

    SET @ColumnNames = STUFF((
        SELECT 
            ',[' + Period + ']'
        FROM 
            @Periods
        ORDER BY 
            Period -- Sortowanie alfabetyczne
        FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '');

    SET @DynamicPivotQuery = '
        SELECT 
            TrE_TwrKod AS [Kod produktu],
            TrE_TwrNazwa AS [Nazwa produktu], 
            ' + @ColumnNames + '
        FROM (
            SELECT 
                TraElem.TrE_TwrKod,
                TraElem.TrE_TwrNazwa,
                CONCAT(YEAR(DATEADD(day, TraNag.TrN_Data2, ''18001228'')), ''_Tydz_'', FORMAT(DATEPART(WEEK, DATEADD(day, TraNag.TrN_Data2, ''18001228'')), ''00'')) AS Period,
                SUM(TraElem.TrE_Ilosc) AS TrE_Ilosc
            FROM 
                CDN.TraElem AS TraElem
            INNER JOIN 
                CDN.TraNag AS TraNag
            ON 
                TraNag.TrN_GIDNumer = TraElem.TrE_GIDNumer
            WHERE 
                TraElem.TrE_GIDTyp = 1616
                AND TraElem.TrE_GIDFirma = 129121
                AND YEAR(DATEADD(day, TraNag.TrN_Data2, ''18001228'')) IN (' + @Years + ')
            GROUP BY 
                TraElem.TrE_TwrKod,
                TraElem.TrE_TwrNazwa,
                YEAR(DATEADD(day, TraNag.TrN_Data2, ''18001228'')),
                DATEPART(WEEK, DATEADD(day, TraNag.TrN_Data2, ''18001228''))
        ) AS SourceTable
        PIVOT (
            SUM(TrE_Ilosc) 
            FOR Period IN (' + @ColumnNames + ')
        ) AS PivotTable
        ORDER BY [Kod produktu], [Nazwa produktu];
    ';

    BEGIN TRY
        EXEC sp_executesql @DynamicPivotQuery;
    END TRY
    BEGIN CATCH
        -- Obsługa błędów
        DECLARE @ErrorMessage NVARCHAR(4000);
        DECLARE @ErrorSeverity INT;
        DECLARE @ErrorState INT;

        SELECT 
            @ErrorMessage = ERROR_MESSAGE(),
            @ErrorSeverity = ERROR_SEVERITY(),
            @ErrorState = ERROR_STATE();

        RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState);
    END CATCH;
END;

Awatar użytkownika
praiser
Posty: 1087
Rejestracja: 02 lip 2014, 12:22
Rola: Handlowiec CDN XL
Wersja: 2023

Re: Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Post autor: praiser »

pytanie, może trywialne. czy procedura ma uprawnienia execute dla CDNRaport skoro wywoływana z wykresu XL ?
albo spróbuj wywołać jako

select 1 as ID

SET NOCOUNT ON
EXEC dbo.raportrw;
SET NOCOUNT OFF
--------------------------------
Pozdrawiam
WW

funmp
Posty: 91
Rejestracja: 11 kwie 2013, 14:46
Rola: Inny
Wersja: 2023

Re: Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Post autor: funmp »

Jak nadać uprawnienia?
GRANT EXECUTE ON dbo.moja_procedura TO CDNRaport
?

Awatar użytkownika
praiser
Posty: 1087
Rejestracja: 02 lip 2014, 12:22
Rola: Handlowiec CDN XL
Wersja: 2023

Re: Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Post autor: praiser »

tak.
--------------------------------
Pozdrawiam
WW

funmp
Posty: 91
Rejestracja: 11 kwie 2013, 14:46
Rola: Inny
Wersja: 2023

Re: Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Post autor: funmp »

Bez zmian:

Znalezienie biblioteki nie udało się.
Sprawdź, czy wszystkie biblioteki DLL są dostępne.


Ktoś miał podobny problem i okazało się, że to błąd w składni przy deklaracji parametrów.
Ja nie mogę doszukać się błędów składniowych w deklaracji parametrów.

Awatar użytkownika
praiser
Posty: 1087
Rejestracja: 02 lip 2014, 12:22
Rola: Handlowiec CDN XL
Wersja: 2023

Re: Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Post autor: praiser »

sprawdziłem u siebie i ta procedura działa spod wykresu XL. czy ten błąd nie wskazuje z nazwy jakiej biblioteki nie może znaleźć ?

inna sprawa, że pivot w procedurze dzieli rok na kolumny tygodni a wykres XL nie pokaże więcej niż 22 kolumny w tym pierwsza kolumn musi być liczbą porządkową więc 21 (rok ma ponad 50 tygodni) więc to może być sztuka dla sztuki ale warto rozwiązać problem techniczny tak czy inaczej
--------------------------------
Pozdrawiam
WW

funmp
Posty: 91
Rejestracja: 11 kwie 2013, 14:46
Rola: Inny
Wersja: 2023

Re: Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Post autor: funmp »

Nie wyświetla.

Może to wina wersji Microsoft SQL Server 2016 lub wersji comarcha 2023.2.2.3201

Awatar użytkownika
praiser
Posty: 1087
Rejestracja: 02 lip 2014, 12:22
Rola: Handlowiec CDN XL
Wersja: 2023

Re: Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Post autor: praiser »

nie wydaje mi się . sprawdź na innym stanowisku albo przeinstaluj ERP na swoim.
--------------------------------
Pozdrawiam
WW

funmp
Posty: 91
Rejestracja: 11 kwie 2013, 14:46
Rola: Inny
Wersja: 2023

Re: Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Post autor: funmp »

praiser pisze:
30 sty 2025, 09:42
nie wydaje mi się . sprawdź na innym stanowisku albo przeinstaluj ERP na swoim.
Sprawdzałem na dwóch stanowiskach, spróbuje jeszcze przeinstalować xl-a

taszek
Posty: 609
Rejestracja: 12 wrz 2012, 13:20
Rola: Administrator CDN XL
Wersja: 2016

Re: Problem z uruchomieniem procedury WYKRES - błąd 1021 (brak biblioteki DLL)

Post autor: taszek »

A w zmiennych systemowych masz porządek ze ścieżkami?
Pozdrawiam
Wojtek Cyrklewicz

ODPOWIEDZ