Пользовательские процедуры для выгрузки в 1С

Вопросы по установке, настройке, сопровождению программ Меркурий-ERP и Меркурий-POS. Экспорт и импорт данных.
Sveta_M
Site Admin
Сообщения: 23
Зарегистрирован: Ср апр 05, 2017 8:12 pm

Пользовательские процедуры для выгрузки в 1С

Сообщение Sveta_M » Пн июн 24, 2019 1:53 pm

Необходимо создать в Меркурии пользовательские процедуры с параметрами date_start и date_end
И делать экспорт в XML

Приходы:

Код: Выделить всё

SELECT
bd_1.date_nakl "date_nakl",
bd_1.nomer_nakl "nomer_nakl",
bd_1.nomer_prih "nomer_prih",
bd_11.nds "nds",
bd_firm1.inn "inn",
bd_firm1.name "supplier_name",
bd_tovar.name "tovar_name",
bd_11.cena_pr_with_nds "cena_with_nds",
bd_tovar.oldkey "OLDKEY",
bd_firm.name "sklad_name",
sum(bd_11.cnt)  "cnt",
sum(bd_11.summa_with_nds) "summa_with_nds"

from bd_1
inner join bd_firm on (bd_1.fk_bd_firm = bd_firm.field_key)
inner join bd_11 on (bd_1.field_key = bd_11.fk_bd_1)
inner join bd_tovar on (bd_11.fk_bd_tovar = bd_tovar.field_key)
inner join bd_firm bd_firm1 on (bd_1.fk_supplier = bd_firm1.field_key)
WHERE
(bd_1.date_nakl between  :date_start AND   :date_end)
and bd_1.cod_prih in (0,1,2,3,4)
GROUP BY
1,2,3,4,5,6,7,8,9,10


Расходы для розницы по данным чеков:

Код: Выделить всё

select
    bd_ch2.date_open date_sale,
    bd_tovar.name tovar_name,
    bd_tovar.field_key tovar_id,
    bd_ed_izm.name edizm_name,
    bd_tovar.oldkey tovar_kodobmena,
    bd_ch21.scancod,
    bd_firm.name sklad,
    bd_ch2.Bank_card,
    sum( bd_ch21.cnt ) cnt_sale,
    sum( bd_ch21.sumpos_with_discount ) sum_sale
from bd_ch21
   inner join bd_tovar on (bd_ch21.fk_bd_tovar = bd_tovar.field_key)
   inner join bd_ed_izm on (bd_tovar.fk_bd_ed_izm = bd_ed_izm.field_key)
   inner join bd_ch2 on (bd_ch21.fk_bd_ch2 = bd_ch2.field_key)
   inner join bd_firm on (bd_ch2.fk_bd_firm = bd_firm.field_key)
where
   (
      (date_open between :date_start and :date_end)
   )
group by bd_ch2.date_open, bd_tovar.name, bd_tovar.field_key, bd_ed_izm.name, bd_tovar.oldkey, bd_ch21.scancod, bd_firm.name, bd_ch2.Bank_card


Расходы для оптовых продаж:

Код: Выделить всё

SELECT
bd_2.date_nakl "Дата накладной",
bd_2.date_rash "Дата полная",
bd_2.date_sf "Дата СФ",
bd_2.nomer_rash "Номер расхода",
bd_2.nomer_sf "Номер СФ",
bd_firm2.name "Наименование получателя",
bd_tovar.name "Наименование товара",
cast(bd_tovar.oldkey as varchar(20)) "Oldkey",
cast(sum(bd_22.cena_with_nds*bd_22.cnt) as float) "Сумма рц с НДС",
cast(sum(bd_22.cnt) as float) "Количество проданного",
bd_firm2.inn inn,
bd_tovar.field_key field_key

from bd_2
inner join bd_22 on (bd_2.field_key = bd_22.fk_bd_2)
inner join bd_tovar on (bd_22.fk_bd_tovar = bd_tovar.field_key)
inner join v_bd_firm bd_firm on (bd_2.fk_bd_firm = bd_firm.field_key)
inner join bd_firm bd_firm2 on (bd_2.FK_RECIPIENT = bd_firm2.field_key)
WHERE
 bd_2.fk_bd_firm in (116)
 AND
(bd_2.date_rash between  :date_start AND   :date_end)
GROUP BY
bd_2.date_nakl,
bd_2.date_rash,
bd_2.date_sf,
bd_2.field_key,
bd_2.nomer_rash,
bd_2.nomer_sf,
bd_firm2.inn,
bd_firm2.name,
bd_tovar.field_key,
bd_tovar.name,
cast(bd_tovar.oldkey as varchar(20))

Вернуться в «Администрирование и программирование»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость