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

Наши программы => УкрСклад => Тема розпочата: Алла Синицкая від Липень 24, 2015, 20:21:46

Назва: Как вывести названия поставщиков в отчете "Остатки на складе"
Відправлено: Алла Синицкая від Липень 24, 2015, 20:21:46
Форум весь поиском переискала, того что мне нужно не нашла. Вопрос следующий.  Сделала новый, нужный мне отчет по остаткам товара на складе. Появилось одно затруднение - не могу вывести поставщиков в последний столбик (желательно и айди и название). Не подскажите как его вывести (как именно они правильно прописываются)? Скрин отчета прикрепляю
Назва: Re: Как вывести названия поставщиков в отчете "Остатки на складе"
Відправлено: TheOK від Липень 24, 2015, 20:34:31
Прикрепите здесь шаблон формы и sql запрос
Назва: Re: Как вывести названия поставщиков в отчете "Остатки на складе"
Відправлено: Алла Синицкая від Липень 27, 2015, 11:19:33
Вот SQL-запрос внизу. Я не спец в создании новых форм, сделала как смогла, поэтому как-то так..  Просто осталось вывести название поставщика, а я нигде не могу найти, как называется это поле. Заранее спасибо за помощь!

А шаблон не могу прикрепить - пишет что большой размер


SELECT
  s.num, 
  t.name,
  t.kod,
  CASE
  WHEN (c.how_to_calc = 1) THEN t.#цена_тип_поле#/c.kurs 
  WHEN (c.how_to_calc = 0) THEN t.#цена_тип_поле#*c.kurs 
  END AS cena_r, 
  t.ed_izm, 
  TOV_LENGTH,
  DOPOLN,
  GARAN,
  TOV_SCANCODE,
  TOV_SCANCODE_IN,
  CENA_CURR_ID,
  CENA,
  CENA_O,
  CENA_1,
  TIP,
  TOV_PROIZV,
  z_kolvo, 
  ((t.#цена_тип_поле#*s.z_kolvo)/#валюта_курс#) AS z_suma, 
  gr.num, 
  gr.group_name 
 
 
FROM 
  view_sklad_zal(#склад_№#,'#дата#') s, 
  tovar_name t 
      LEFT JOIN currency c ON t.#цена_тип_поле_пр#_curr_id = c.num, 
  print_view_sklad(0,#склад_№#) gr 
WHERE 
  s.num = t.num AND 
  t.tip = gr.num AND 
  t.visible = 1 AND 
  z_kolvo > 0 
ORDER BY 
  gr.group_name, 
  t.name
Назва: Re: Как вывести названия поставщиков в отчете "Остатки на складе"
Відправлено: TheOK від Липень 27, 2015, 20:50:29
Попробуйте использовать запрос, указанный ниже
Обязательно проверьте корректность работы
Отчет работает медленее, на сколько медленее, мне сложно судить, не замерял
В отчете можно использовать переменные

[DataRep."CLIENT_FIO"]
[DataRep."CLIENT_ID"]


SELECT
s.num, 
t.name,
t.kod,
CASE
WHEN (c.how_to_calc = 1) THEN t.#цена_тип_поле#/c.kurs 
WHEN (c.how_to_calc = 0) THEN t.#цена_тип_поле#*c.kurs 
END AS cena_r, 
t.ed_izm, 
t.TOV_LENGTH,
t.DOPOLN,
t.GARAN,
t.TOV_SCANCODE,
t.TOV_SCANCODE_IN,
t.CENA_CURR_ID,
t.CENA,
t.CENA_O,
t.CENA_1,
t.TIP,
t.TOV_PROIZV,
z_kolvo, 
((t.#цена_тип_поле#*s.z_kolvo)/#валюта_курс#) AS z_suma, 
gr.num, 
gr.group_name  ,
cl.FIO as client_fio,
cl.num as client_id
FROM 
view_sklad_zal(#склад_№#,'#дата#') s, 
tovar_name t 
LEFT JOIN currency c ON t.#цена_тип_поле_пр#_curr_id = c.num
inner join
print_view_sklad(0,#склад_№#) gr on   t.tip = gr.num
LEFT JOIN
tovar_zal tz on tz.sklad_id = gr.sklad_id and tz.tovar_id = t.num
left join
client cl on cl.num = tz.last_post_id and tz.last_post_id != -1
WHERE 
s.num = t.num AND 
t.visible = 1 AND 
z_kolvo > 0 
ORDER BY 
  gr.group_name, 
  t.name
Назва: Re: Как вывести названия поставщиков в отчете "Остатки на складе"
Відправлено: Алла Синицкая від Липень 27, 2015, 21:18:40
Спасибо Вам огромное! Все работает! Медленнее конечно, но не смертельно, можно и подождать:)