Описание
Когда вы пытаетесь подключиться к базе данных PostgreSQL, то появляется сообщение об ошибке. В описании ошибки написано, что необходимо установить дополнительные компоненты. Код ошибки: [DataSource.MissingClientLibrary] PostgreSQL.
Решение
Нужно установить дополнительный компонент Npgsql. Сначала перейдите на эту страницу. Здесь нужно найти версию, которая содержит файл Microsoft Installer с расширением msi. В данный момент последняя версия установщика 4.0.12. Скачайте файл msi.
Запустите установщик и в окне «Select the way you want features to be installed» выберете пункт Npgsql GAC Installation.
После завершения установки вернитесь в Excel и повторите попытку подключения к базе данных PostgreSQL.
Примененные функции
- Value.NativeQuery
- PostgreSQL.Database
- Table.TransformColumnTypes
Код
let
Источник = Value.NativeQuery(
PostgreSQL.Database("10.80.0.3", "adb"),
"select report_dt, branch_nm, category_nm, kpi_nm, sum(kpi_val)#(lf)from dm.sfct_svoefermerstvo_branch_kpi_daily #(lf)where category_nm in ('Посадочные материалы','Семена')#(lf) and date_part('year', report_dt) >= 2021#(lf)group by report_dt, branch_nm, category_nm, kpi_nm#(lf)union all#(lf)select report_dt, branch_nm, category_nm, kpi_nm, sum(kpi_val)#(lf)from dm.sfct_svoefermerstvo_branch_kpi_daily #(lf)where category_nm in ('Сельхозтехника') #(lf) and date_part('year', report_dt) >= 2021#(lf)group by report_dt, branch_nm, category_nm, kpi_nm#(lf)union all#(lf)select report_dt, branch_nm, category_nm, kpi_nm, sum(kpi_val)#(lf)from dm.sfct_svoefermerstvo_branch_kpi_daily #(lf)where category_nm in ('Корп карты') #(lf) and date_part('year', report_dt) >= 2021#(lf)group by report_dt, branch_nm, category_nm, kpi_nm#(lf)union all#(lf)select report_dt, branch_nm, category_nm, kpi_nm, sum(kpi_val)#(lf)from dm.sfct_svoefermerstvo_branch_kpi_daily #(lf)where category_nm in ('Сервисы')#(lf) and date_part('year', report_dt) >= 2021#(lf)group by report_dt, branch_nm, category_nm, kpi_nm#(lf)union all#(lf)select report_dt, branch_nm, category_nm, kpi_nm, sum(kpi_val)#(lf)from dm.sfct_svoefermerstvo_branch_kpi_daily #(lf)where category_nm in ('Свое Родное')#(lf) and date_part('year', report_dt) >= 2021#(lf)group by report_dt, branch_nm, category_nm, kpi_nm",
null
),
#"Измененный тип" = Table.TransformColumnTypes(
Источник,
{{"report_dt", type date}}
)
in
#"Измененный тип"