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

Отчеты на заказ

Автор TheOK, Травень 11, 2012, 22:31:15

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

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

Неактивное голосование

1
0 (0%)
2
0 (0%)

Всього голосів: 0

TheOK

#15
Демонстрационная версия отчета: Расчет прибыли по товару методом FIFO.
Отчет можно запускать для вывода данных (т.е. параметр дата по) до 29.10.2012г После данного числа он данные не выводит.
Если хотите протестировать как отчет работает, просто выставьте параметр дата по < 29.10.12.
Описание:
1) Отчет отличается от стандартного
2) Считает прибыль по методу FIFO для всех активных фирм
3) На данный момент отчет не учитывает документы производство. Для товара, который участвовал в производстве прибыль будет считаться неверно (Если кому-то будет интересно, думаю, что добавить учет данного документа будет возможно).
4) Учитываются только товары (услуги не учитываются, хотя, можно и их вывести)
5) Для расчета прибыли учитываются все документы, создающие движение товара кроме Производство и Перемещение
7) Если вы продаете товар в минус (т.е. сумма кол-ва товара на всех складах <0), то отчет считает, что вы закупали этот товар по цене =0. Лучше не продавайте товар в минус)
8 ) Для расчета прибыли цены беру как Цена+ НДС, возможно, лучше брать без НДС, однако на данный момент это так. Все будет зависеть от спроса
Добавление отчета
Во вложенных файлах шаблон отчета, запрос добавляю в посте, т.к. часто возникают проблемы с кодировкой при добавлении отчета.
Ссылка на видео как добавлять этот отчет в УкрСкладЗдесь: Добавление отчета Прибыль по клиентам FIFO Обязательные параметры, которые вам необходимо выставить перед запуском отчета: Период дат, впрочем все это видно на видео.
Производительность.
На тестовой базе с общим кол-вом документов 20 000, 100 000 фактов участия товаров в документах  отчет за один месяц формировался 2 мин 15 сек (1 мин 15 сек. -формирование данных, 1 мин. обработка данных+ вывод страниц на печать), что, в общем-то является довольно неплохим результатом для данного отчета.

Select
   CurRtm.mdate                     --1
   ,curRtm.tovar_id                  --2
   ,CurRtm.num as CurRtmNum            --3
   ,cast(
      case
         when CurRtm.doc_type_id=12 then (-1)*CurRtm.TO_kolvo
         else   CurRtm.TO_kolvo
      end
   as double precision) as TO_kolvo      --4
   ,cast(
   case
      when CurRtm.Doc_type_id in (9,11) then CurRtm.to_cena       --умышленно учитываю списание и внесение остатков без ПДВ
      else CurRtm.to_cena+CurRtm.cena_pdv
   end as double precision) as to_cena    --5
   ,cast(
      case
         when CurRtm.Doc_type_id=12 then (-1)*CurRtm.to_suma+CurRtm.suma_pdv    -- пдв
         when CurRtm.Doc_type_id in (9,11) then CurRtm.to_suma
         else CurRtm.to_suma+CurRtm.suma_pdv   
      end
   as double precision) as to_suma            --6
   ,cast(
      CASE
         when RTM.mdate<'#дата_с#' then -1  --если до периода
         else 0                        --если в периоде
      end
   as integer) as PR_ident                  --7
   ,Rtm.mdate as PR_date                  --8
   ,RTm.doc_type_id PR_DType               --9
   ,Rtm.num as PR_ID                     --10
   ,tn.kod                              --11
   ,tn.name                           --12
   ,cast(
      case
         when RTM.mdate>='#дата_с#' then
            case
               when RTM.doc_type_id=12 then (-1)*Rtm.TO_kolvo
               else Rtm.TO_kolvo
            end
         else 0
      end as  double precision)
   as R_kol_during                      --13
   ,cast(
      case
         when RTM.mdate>='#дата_с#' then
            case
               when Rtm.Doc_type_id in (9,11) then Rtm.To_cena
               else Rtm.To_cena+Rtm.cena_pdv
            end
         else 0
      end as  double precision)
   as R_cena_during                     --14
   ,cast(
      case
         when RTM.mdate<'#дата_с#' then
            case
               when RTM.doc_type_ID=12 then (-1)*Rtm.TO_kolvo
               else Rtm.TO_kolvo
            end
         else 0
      end as  double precision)
   as R_kol_before                        --15
   ,cast (0 as double precision) as P_kol      --16
   ,cast (0 as double precision)  as P_cena   --17
   ,cast('' as varchar (1)) as Client_FIO         --18
   ,cast (0 as integer) as Client_ID                     --19
   ,cast(
      case
         when CurRtm.doc_type_id IN (1,6) then 1
         when CurRtm.doc_type_id IN (12) then -1
         else 0
      end
   as integer   
   ) as RV_Ident                        --20
   ,cast(
      case
         when Rtm.doc_type_id =8 then 1
         when Rtm.doc_type_id IN (1,6) then 2
         when RTM.doc_type_id=12 then 3         
         else 5
      end
   as integer   
   ) as RVP_Sort                        --21   
from
    tovar_move CurRTm
        left join tovar_move RTm
            on (CurRTm.tovar_id=RTm.tovar_id and (RTm.doc_type_id in (1,6,11,18,12)) and (Rtm.mdate<='#дата_по#') )
        left join tovar_name TN on (CurRtm.tovar_id=tn.num)
      left join client C
         on (
            case
               when CurRtm.doc_type_id IN (1,6) then CurRtm.to_firma_id
               when CurRtm.doc_type_id=12 then CurRtm.From_Firma_ID
               else -999
            end=C.num)
         
where
    CurRTm.doc_type_id in (1,6,11,18,12) --РН,АВР,спис,Возвр.пост,Возвр(кл.)
    and CurRtm.mdate>='#дата_с#'
    and CurRtm.mdate<='#дата_по#'
    and CurRTm.is_usluga=0
union all


Select
   CurRtm.mdate                              --1
   ,curRtm.tovar_id                           --2
   ,CurRtm.num as CurRtmNum                     --3
   ,cast(case
      when CurRtm.doc_type_id =12 then (-1)*CurRtm.TO_kolvo
      else   CurRtm.TO_kolvo
   end as double precision) as TO_kolvo            --4
   ,cast(      --умышленно учитываю списание и внесение остатков без ПДВ
   case
      when CurRtm.Doc_type_id in (9,11) then CurRtm.to_cena     
      else CurRtm.to_cena+CurRtm.cena_pdv
   end as double precision) as to_cena                 --5
   ,cast(
      case
         when CurRtm.Doc_type_id=12 then (-1)*CurRtm.to_suma+CurRtm.suma_pdv    -- пдв
         when CurRtm.Doc_type_id in (9,11) then CurRtm.to_suma         
         else CurRtm.to_suma+CurRtm.suma_pdv   
      end
   as double precision) as to_suma
   ,cast(1 as integer) as PR_ident                  --7
   ,Ptm.mdate as PR_date                        --8
   ,PTm.doc_type_id PR_DType                     --9
   ,Ptm.num as PR_ID                           --10
   ,tn.kod                                    --11
   ,tn.name                                 --12


   ,cast(0 as double precision) as R_kol_during      --13
   ,cast(0 as double precision) as R_cena_during      --14
   ,cast(0 as double precision) as R_kol_before      --15
   ,Ptm.to_kolvo as P_kol                        --16
   ,case
      when Ptm.Doc_type_id in (9,11) then Ptm.to_cena
      else Ptm.to_cena+Ptm.cena_pdv   
   end   as P_cena                              --17
   ,cast('' as varchar (1)) as Client_FIO         --18
   ,cast (0 as integer) as Client_ID                     --19
   ,cast(
      case
         when CurRtm.doc_type_id IN (1,6) then 1
         when CurRtm.doc_type_id IN (12) then -1
         else 0
      end
   as integer   
   ) as RV_Ident                              --20   
   ,cast(
      case
         when Ptm.doc_type_id =8 then 1
         when Ptm.doc_type_id IN (1,6) then 2
         when PTM.doc_type_id=12 then 3         
         else 5
      end
   as integer   
   ) as RVP_Sort                              --21   
from
    tovar_move CurRTm
        inner join tovar_move PTm
            on (CurRTm.tovar_id=PTm.tovar_id  and (PTm.doc_type_id in (8,9)) and (ptm.mdate<='#дата_по#') )
        left join tovar_name TN on (CurRtm.tovar_id=tn.num)
      left join client C
         on (
            case
               when CurRtm.doc_type_id IN (1,6) then CurRtm.to_firma_id
               when CurRtm.doc_type_id=12 then CurRtm.From_Firma_ID
               else -999
            end=C.num)     
where
    CurRTm.doc_type_id in (1,6,11,18,12) --РН,АВР,спис,Возвр.пост,Возвр(кл.)
    and CurRtm.mdate>='#дата_с#'
    and CurRtm.mdate<='#дата_по#'
    and CurRTm.is_usluga=0
order by
   18,19,12,2,3,7,8,21,9,10  --8 дата
Работа в УкрСклад(особенности и советы): [url="//www.softbalance.com.ua/forum/index.php/topic,2362.0.html"]www.softbalance.com.ua/forum/index.php/topic,2362.0.html[/url]
Некоторые мои отчеты можно найти здесь: [url="http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html"]http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html[/url]

TheOK

Полнофункциональная версия шаблона расходной накладной (без ограничений).
Экспорт накладной в Файл электронной расходной накладной (*.MMO)
Назначение - автоматизировать ввод расходной накладной компании-поставщика в учетную систему контрагента-получателя в качестве приходного документа, заменив традиционный интерактивный ввод.Работа с отчетом производится так, как это указано на видео (видео ЗДЕСЬ ).
Внимательно посмотрите видео, чтобы понять весь функционал данного отчета.
Чтобы добавить отчет в программу, просто скиньте его в папку с шаблонами отчетов (обычно ukrsklad\rep и ukrsklad\rep\rus).

А) Файлы электронных накладных (.MMO) имеют некоторые ограничение на кол-во символов в строке, которые отличаются от допустимых в УкрСклад (ограничение на длину символов, и краткое описание формат можно увидеть ЗДЕСЬ).
Б) Если вы передадите вашему клиенту 2 накладных одним числом, с одинаковым № документа, накладная скорее всего проведена не будет!

Чтобы экспортировать данные в .mmo, кликните 2 раза на "кнопку" Сохранить в .MMO
1) В случае, если кол-во символов в каком-то поле превышает допустимое, выводится текст ошибки.
2) № налоговой накладной вносится в поле Дополнительно.
3) Данные о сроке годности (если там указана корректная дата) берутся из поля справочника товаров Гарантия
4) Если название активной фирмы длиннее допустимого, краткое название предприятия берется из поля Дополнительно (в справочнике активных фирм)
5) Вы можете смело отправлять отчет на печать на обычный принтер, дополнительные данные распечатаны не будут (см. видео), распечатается лишь шаблон (чтобы распечатать и вторую страницу перед печатью измените кол-во страниц, которые нужно вывести на печать).
6) Если в накладной указывается скидка/надбавка, все цены на товар будут изменены с учетом скидки (т.е. не будут совпадать с данными в стандартном шаблоне)
Ограничения:
-не работает с: налогом на рекламу, Товарно-транспортными затратами

Внимание!!!
Различные программы ваших клиентов могут по разному обрабатывать данный формат файлов.
Работа в УкрСклад(особенности и советы): [url="//www.softbalance.com.ua/forum/index.php/topic,2362.0.html"]www.softbalance.com.ua/forum/index.php/topic,2362.0.html[/url]
Некоторые мои отчеты можно найти здесь: [url="http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html"]http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html[/url]

TheOK

После Нового Года, думаю, появится немножко времени на то, чтобы перебрать некоторые из своих отчетов и выложить здесь, думаю, что будет именно так.
Отчеты будут не демонстрационными (т.е. без ограничений). и бесплатные.
Демо-версии отчетов, представленные в этой ветке так же будут доступны с полным функционалом.
Работа в УкрСклад(особенности и советы): [url="//www.softbalance.com.ua/forum/index.php/topic,2362.0.html"]www.softbalance.com.ua/forum/index.php/topic,2362.0.html[/url]
Некоторые мои отчеты можно найти здесь: [url="http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html"]http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html[/url]

Евгений Дише

TheOK виу виу очень очень нужно твое покровительство в отчете, у нас тут завал полный с заказами, нужно кое чего подправить, чтобы было человеку проще отслеживать забранные или нет заказы.  :-[ очень очень прошу связаться со мной в скайпе  :)

Кирилл

Огромное спасибо за разработанные отчеты! Не думал что могу сэкономить столько времени и облегчив себе работу. Сделано все на высшем уровне.

Евгений Дише

И снова огромное спасибо за быстрые отчеты, как всегда все на уровне 8). Почти все в отчетах сделано, правда чуть позже доберемся до прайс листа с картинками и АВС планированию)))

Осталось решить два ключевых вопроса. Как скрыть некоторые поля в программе и как связать с инет магазином, тогда я вообще перестану коситься в сторону 1С  8)

olga_gab

Хочу поблагодарить уважаемого TheOK за предоставленную мне помощь в разработке отчета в конце 2012 года. Вы мне очень помогли!

TheOK

#22
Ув. Заказчики, в связи с тем, что обращения на и-мейл по мелким переделкам в стандартных отчетах случаются достаточно часто и их рассмотрение занимает некоторое время. Цена на подобные переделки будет рассчитываться по тем же принципам, что и на остальные отчеты (т.е. в зависимости от затраченного времени на выяснение требований и изменение отчета) с округлением до 5 грн.
P.S. консультации не относящиеся к заказам отчетов, через и-мейл не производятся, все консультации только в рамках дружеской помощи на форуме
Работа в УкрСклад(особенности и советы): [url="//www.softbalance.com.ua/forum/index.php/topic,2362.0.html"]www.softbalance.com.ua/forum/index.php/topic,2362.0.html[/url]
Некоторые мои отчеты можно найти здесь: [url="http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html"]http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html[/url]

alex437

Спасибо. Отчет сделан быстро. Получил все, что хотел

TheOK

Как и обещал, буду понемногу выкладывать полные версии (не Demo) некоторых отчетов.
Взаиморасчеты с контрагентами в 3х валютах (Полнофункциональный)
Работает для 3х стандартных валют, которые внесены в УкрСклад изначально


Внешний вид отчета можете увидеть в прикрепленном файле.
Видео по добавлению отчета ЗДЕСЬ ССЫЛКА (делайте так, как написано в видео).
Чтобы скачать видео достаточно в ссылке добавить перед youtube символы ss. Т.е. http://ssyou....
Если вы добавили отчет как указано на видео, но при запуске выдает ошибку с текстом #? ??? _??# или подобное, замените SQL запрос в добавленном отчете на прикрепленный вот прямо здесь:


SELECT
  c.fio, 
  CASE       
    WHEN (tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.to_firma_id     
    ELSE tm.from_firma_id       
  END AS client_id,     
  SUM(CASE 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN (-1)*(tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv) 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv 
    ELSE 0       
  END) AS suma_zal, 
  cast(0 as double precision ) as suma_zal_d,
  cast(0 as double precision ) as suma_zal_e,
 
  SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv   
    ELSE 0       
  END) AS suma_out
  ,cast (0 as double precision) as suma_out_d
  ,cast (0 as double precision) as suma_out_e
 
  ,SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv   
    ELSE 0       
  END) AS suma_in 
  ,cast (0 as double precision) as suma_in_d
  ,cast (0 as double precision) as suma_in_e 
FROM       
  tovar_move tm       
    LEFT JOIN doc_types dt ON (tm.doc_type_id = dt.num),   
  client c 
WHERE       
  c.visible = 1 AND   
  tm.curr_type = 0 AND 
#if #клиент_группа_№# = -1 #then
#else 
  c.tip = #клиент_группа_№# AND
#endif 
  tm.doc_type_id in (1,18,3,6,12,16,8,4,5) AND   
  tm.mdate <= '#дата_по#' AND   
  CASE       
    WHEN (tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.from_firma_id   
    ELSE tm.to_firma_id   
  END = #активная_фирма_№# AND   
  CASE       
    WHEN (tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.to_firma_id       
    ELSE tm.from_firma_id       
  END = c.num 
GROUP BY 
  1,2 
HAVING 
  (udf_roundto(SUM(CASE 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN (-1)*(tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv) 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv   
    ELSE 0       
  END),5) != 0 OR 
  udf_roundto(SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv 
    ELSE 0       
  END),5) != 0 OR 
  udf_roundto(SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv 
    ELSE 0       
  END),5) !=0 ) 


  union all


SELECT
  c.fio, 
  CASE       
    WHEN (tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.to_firma_id     
    ELSE tm.from_firma_id       
  END AS client_id,     
  cast(0 as double precision ) as suma_zal, 
  SUM(CASE 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN (-1)*(tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv) 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv 
    ELSE 0       
  END) AS suma_zal_d
  ,cast(0 as double precision ) as suma_zal_e
 
  ,cast (0 as double precision) as suma_out
  ,SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv   
    ELSE 0       
  END) AS suma_out_d
  ,cast (0 as double precision) as suma_out_e 
 
  ,cast (0 as double precision) as suma_in,
  SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv   
    ELSE 0       
  END) AS suma_in_d 
  ,cast (0 as double precision) as suma_in_e
FROM       
  tovar_move tm       
    LEFT JOIN doc_types dt ON (tm.doc_type_id = dt.num),   
  client c 
WHERE       
  c.visible = 1 AND   
  tm.curr_type = 1 AND 
#if #клиент_группа_№# = -1 #then
#else 
  c.tip = #клиент_группа_№# AND
#endif 
  tm.doc_type_id in (1,18,3,6,12,16,8,4,5) AND   
  tm.mdate <= '#дата_по#' AND   
  CASE       
    WHEN (tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.from_firma_id   
    ELSE tm.to_firma_id   
  END = #активная_фирма_№# AND   
  CASE       
    WHEN (tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.to_firma_id       
    ELSE tm.from_firma_id       
  END = c.num 
GROUP BY 
  1,2 
HAVING 
  (udf_roundto(SUM(CASE 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN (-1)*(tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv) 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv   
    ELSE 0       
  END),5) != 0 OR 
  udf_roundto(SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv 
    ELSE 0       
  END),5) != 0 OR 
  udf_roundto(SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv 
    ELSE 0       
  END),5) !=0 ) 


union all


SELECT
  c.fio, 
  CASE       
    WHEN (tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.to_firma_id     
    ELSE tm.from_firma_id       
  END AS client_id
  ,cast(0 as double precision ) as suma_zal
  ,cast(0 as double precision ) as suma_zal_d
  ,SUM(CASE 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN (-1)*(tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv) 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv 
    ELSE 0       
  END) AS suma_zal_e
 
  ,cast (0 as double precision) as suma_out
  ,cast (0 as double precision) as suma_out_d 
  ,SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv   
    ELSE 0       
  END) AS suma_out_e   
  ,cast (0 as double precision) as suma_in
  ,cast (0 as double precision) as suma_in_d
  ,SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv   
    ELSE 0       
  END) AS suma_in_e   
FROM       
  tovar_move tm       
    LEFT JOIN doc_types dt ON (tm.doc_type_id = dt.num),   
  client c 
WHERE       
  c.visible = 1 AND   
  tm.curr_type = 2 AND 
#if #клиент_группа_№# = -1 #then
#else 
  c.tip = #клиент_группа_№# AND
#endif 
  tm.doc_type_id in (1,18,3,6,12,16,8,4,5) AND   
  tm.mdate <= '#дата_по#' AND   
  CASE       
    WHEN (tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.from_firma_id   
    ELSE tm.to_firma_id   
  END = #активная_фирма_№# AND   
  CASE       
    WHEN (tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.to_firma_id       
    ELSE tm.from_firma_id       
  END = c.num 
GROUP BY 
  1,2 
HAVING 
  (udf_roundto(SUM(CASE 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN (-1)*(tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv) 
    WHEN (tm.mdate < '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv   
    ELSE 0       
  END),5) != 0 OR 
  udf_roundto(SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (1, 18, 6, 4, 5)) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv 
    ELSE 0       
  END),5) != 0 OR 
  udf_roundto(SUM(CASE     
    WHEN (tm.mdate >= '#дата_с#' AND tm.doc_type_id IN (3, 16, 12,) THEN tm.#валюта_преф#from_suma+tm.#валюта_преф#suma_pdv 
    ELSE 0       
  END),5) !=0 ) 
ORDER BY     
  1



P.S. Если вы удаляли некоторые из стандартных валют, то у вас отчет может работать некорректно. Изменение данного отчета под список "ваших" валют может быть осуществлен за символическую плату в 5-10 грн. Детали по и-мейл. Изменение включает только включение в список новых валют и/или исключение старых. Впрочем, я бы советовал подымать тему на форуме, с просьбой в этом помочь, дабы наработки остались доступны для всех.
Работа в УкрСклад(особенности и советы): [url="//www.softbalance.com.ua/forum/index.php/topic,2362.0.html"]www.softbalance.com.ua/forum/index.php/topic,2362.0.html[/url]
Некоторые мои отчеты можно найти здесь: [url="http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html"]http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html[/url]

TheOK

#25
Здесь представлена полнофункциональная версия (т.е. вы можете добавить себе и он будет работать без ограничений) отчета Заказы + связанные документы.
Отчет отображает все документы СФ за указанный период + связанные с ними в одну группу документы: РН, ПКО, Вх.Пл.Поруч.
Желтой заливкой выделяется строка, если округленная сумма по СФ > суммы (ПКО+ВХ.ПЛ.Поруч).
Данные выводятся по всем активным фирмам в основной валюте.
Отчет не тестировался, поэтому перед тем как использовать его на своем предприятии проверьте правильность его работы (я тестировать его не буду, предоставляю это вам)

Внешний вид отчета можете увидеть в прикрепленном файле.
Видео по добавлению отчета ЗДЕСЬ ССЫЛКА (делайте так, как указано в видео).
Чтобы скачать видео достаточно в ссылке добавить перед youtube символы ss. Т.е. http://ssyoutube....

P.S. Если есть вопросы пишите на И-МЕЙЛ с указанием ссылки на данный отчет.
Работа в УкрСклад(особенности и советы): [url="//www.softbalance.com.ua/forum/index.php/topic,2362.0.html"]www.softbalance.com.ua/forum/index.php/topic,2362.0.html[/url]
Некоторые мои отчеты можно найти здесь: [url="http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html"]http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html[/url]

harlamoff

Доброго времени суток!!!

Интересует печатная форма расходной накладной в таком виде, чтоб в теле накладной выводился общий долг покупателя,а не только сумма по этой накладной. Это реально??  Если да помогите,небезвозмездно.

TheOK

#27
Цитата: harlamoff від Березень 12, 2013, 20:54:44
Доброго времени суток!!!

Интересует печатная форма расходной накладной в таком виде, чтоб в теле накладной выводился общий долг покупателя,а не только сумма по этой накладной. Это реально??  Если да помогите,небезвозмездно.
По вопросам заказа, сразу пишите на и-мейл. Здесь смысла обсуждать процесс заказа нет...
Данное сообщение я в течении двух недель удалю.
Такой отчет создать возможно.
1) Вышлите на и-мейл **и-мейл скрыт** внешний вид отчета, каким он должен быть (например, в эксель экспортируйте данные из какой-то накладной, можете изменить персональные данные, которые там выводятся, предварительно добавив в нужное место поле, куда выводить данные, и выделите его каким-то цветом, чтобы я понял куда выводить данные)
2) Мне нужно знать будет следующее:
а) Уникальные ли у вас данные в полях ФИО клиентов (т.е. не повторяются ли у вас данные в этих полях среди некоторых клиентов)
б) Какой именно шаблон (точное название в программе) для печати расходной накладной вы используете
в) В каком отчете (напишите название отчета) можно увидеть число (общий долг покупателя) которое вы хотите видеть в расходной накладной?

Возможно возникнут некоторые дополнительные вопросы после того, как просмотрю, что нужно делать, но на данный момент это все. Стоимость подобной модификации напишу Вам после того, как оценю объем работы. После вашего согласия на условия смогу приступить к выполнению отчета
Работа в УкрСклад(особенности и советы): [url="//www.softbalance.com.ua/forum/index.php/topic,2362.0.html"]www.softbalance.com.ua/forum/index.php/topic,2362.0.html[/url]
Некоторые мои отчеты можно найти здесь: [url="http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html"]http://www.softbalance.com.ua/forum/index.php/topic,2307.0.html[/url]

harlamoff


olga_gab

Готова проголосовать! Получила  отчет быстро + получила подробную инструкцию!