• Ласкаво просимо на Спільнота для обміну досвідом між користувачами програм УкрБланк, УкрСклад, УкрЗарплата.
 

экспорт в excel данных через SQL. Помогите пож-та.

Автор Олег Краснов, Березень 23, 2016, 11:04:54

Попередня тема - Наступна тема

0 Користувачі і 1 Гість дивляться цю тему.

Олег Краснов

Здравствуйте. Подскажите пож-та какой необходимо  прописывать запрос SQL, что бы на выходе получить таблицу excel с заданной "шапкой ":

Артикульный номер
Наименование артикула
Количество
ед. измерения
Цена закупки
Валюта закупки
цена розница
Цена опт
цена 1
Цена 2
Валюта продажу
кол-во в заказе
Последняя Дата прихода
Последняя Дата продажи
№ поставщик
Наименование поставщика
№ склада
название Артикульной  подгруппы
название Артикульной  группы


Заранее благодарю за помощь.

admin

Цитата: Олег Краснов від Березень 23, 2016, 11:04:54
Здравствуйте. Подскажите пож-та какой необходимо  прописывать запрос SQL, что бы на выходе получить таблицу excel с заданной "шапкой ":

1. Что это за поля в УкрСкладе: "Артикульный номер", "Наименование артикула", "название Артикульной  подгруппы", "название Артикульной  группы"?
2. О каком заказе вообще идет речь в поле "кол-во в заказе"?

Олег Краснов

Извините за сумбурность в запросе, я только начал осваивать Укрсклад. Мне хотелось бы получить на выходе след. ин-фу в excel( немного подправил) Во вложении пример, возможно ли сделать такую табличку через SQL запрос?:

Код товару
Повна назва товару
Одиниця виміру
Кількість
Ціна
Валюта приходу
Роздр.ціна
Опт.ціна
Ціна 1
Ціна 2
Валюта видаткова
Последняя Дата прихода
Последняя Дата продажи
Наименование поставщика
назва группи товару
назва підгруппи товару
назва Складу

admin

В меню Опции : SQL менеджер выполните след. код:
SELECT
  tn.kod,
  tn.name,
  tn.ed_izm,
  tz.kolvo,
  tn.cena,
  c_in.short_name AS curr_in,
  tn.cena_r,
  tn.cena_o,
  tn.cena_1,
  tn.cena_2,
  c_out.short_name AS curr_out,
  tm_in.mdate AS last_in_date,
  tm_out.mdate AS last_out_date,
  p.fio,
  CASE
    WHEN (t.grupa = 0) THEN t.name
    ELSE mt.name
  END AS main_grupa,
  CASE
    WHEN (t.grupa > 0) THEN t.name
    ELSE ''
  END AS grupa,
  sn.name AS sklad_name
FROM
  tovar_name tn
    JOIN tovar_zal tz ON (tn.num = tz.tovar_id)
    JOIN currency c_in ON (tn.cena_curr_id = c_in.num)
    JOIN currency c_out ON (tn.cena_curr_id = c_out.num)
    JOIN sklad_names sn ON (tz.sklad_id = sn.num)
    JOIN tip t ON (tn.tip = t.num)
    LEFT JOIN tip mt ON (t.grupa = mt.num)
    LEFT JOIN client p ON (tz.last_post_id = p.num)
    LEFT JOIN tovar_move tm_in ON (tm_in.num = (SELECT FIRST 1 tm_in1.num FROM tovar_move tm_in1 WHERE tm_in1.tovar_id = tn.num AND tm_in1.doc_type_id = 8 AND tm_in1.to_sklad_id = tz.sklad_id ORDER BY tm_in1.mdate DESC))
    LEFT JOIN tovar_move tm_out ON (tm_out.num = (SELECT FIRST 1 tm_out1.num FROM tovar_move tm_out1 WHERE tm_out1.tovar_id = tn.num AND tm_out1.doc_type_id = 1 AND tm_out1.from_sklad_id = tz.sklad_id ORDER BY tm_out1.mdate DESC))
WHERE
  tn.visible = 1


Это по всем складам, если надо на конкретный склад, добавьте в конце:
AND tz.sklad_id = 5
где 5 замените на ID своего склада.

Олег Краснов


installer

А подскажите как наоборот сделать
Есть прайс ексель, который каждый день обновляется, нужно из него вытягивать приходную цену в определенную групу товаров, как это можно реализовать автоматом????

admin

Цитата: installer від Квітень 27, 2016, 14:46:11
А подскажите как наоборот сделать
Есть прайс ексель, который каждый день обновляется, нужно из него вытягивать приходную цену в определенную групу товаров, как это можно реализовать автоматом????

Меню Опции : Импорт товаров / клиентов из файла.

installer

как таким образом мне поменять приходную цену в уже существующем товаре?? как указать какой позиции в укрскладе какая цена из екселя?

admin

Цитата: installer від Квітень 29, 2016, 08:24:50
как таким образом мне поменять приходную цену в уже существующем товаре?? как указать какой позиции в укрскладе какая цена из екселя?

Например делаете табличку в которой только "Код товара" и "Приходная цена", указываете в поиске двойников "Код". Программа будет искать товар с указанным кодом и все используемые поля (кроме того по которому идет поиск двойника, а в вашем случае "Приходная цена") обновит.