# Sales summary [:find ?d4 (sum ?total) (sum ?tax) (sum ?tip) (sum ?service-charge) (sum ?discount) (sum ?returns) :with ?s :in $ :where [?s :sales-order/client [:client/code "{{customer}}"]] [?s :sales-order/date ?d] [?s :sales-order/total ?total] [?s :sales-order/tax ?tax] [?s :sales-order/tip ?tip] [?s :sales-order/service-charge ?service-charge] [?s :sales-order/returns ?returns] [?s :sales-order/discount ?discount] [(clj-time.coerce/to-date-time ?d) ?d2] [(auto-ap.time/localize ?d2) ?d3] [(auto-ap.time/unparse-local ?d3 auto-ap.time/normal-date) ?d4] ] # Sales Categories [:find ?d4 ?n ?n2 (sum ?total) (sum ?tax) (sum ?discount) :with ?s ?li :in $ :where [?s :sales-order/client [:client/code "{{customer}}"]] [?s :sales-order/date ?d] [?s :sales-order/line-items ?li] [?li :order-line-item/category ?n] [(get-else $ ?li :order-line-item/item-name "") ?n2] [?li :order-line-item/total ?total] [?li :order-line-item/tax ?tax] [?li :order-line-item/discount ?discount] [(clj-time.coerce/to-date-time ?d) ?d2] [(auto-ap.time/localize ?d2) ?d3] [(auto-ap.time/unparse-local ?d3 auto-ap.time/normal-date) ?d4] ] # Expected Deposits [:find ?d4 ?t ?f :in $ :where [?c :client/code "{{customer}}"] [?s :expected-deposit/client ?c] [?s :expected-deposit/total ?t] [?s :expected-deposit/fee ?f] [?s :expected-deposit/sales-date ?date] [(clj-time.coerce/to-date-time ?date) ?d2] [(auto-ap.time/localize ?d2) ?d3] [(auto-ap.time/unparse-local ?d3 auto-ap.time/normal-date) ?d4] ] # Tenders [:find ?d4 ?type ?p2 (sum ?total) (sum ?tip) :with ?charge :in $ :where [?c :client/code "{{customer}}"] [?s :sales-order/client ?c] [?s :sales-order/charges ?charge] [?charge :charge/type-name ?type] [?charge :charge/total ?total] [?charge :charge/tip ?tip] [(get-else $ ?charge :charge/processor :na) ?ccp] [(get-else $ ?ccp :db/ident :na) ?p] [(name ?p) ?p2] [?s :sales-order/date ?date] [(clj-time.coerce/to-date-time ?date) ?d2] [(auto-ap.time/localize ?d2) ?d3] [(auto-ap.time/unparse-local ?d3 auto-ap.time/normal-date) ?d4] ] # Refunds [:find ?d4 ?t (sum ?total) (sum ?fee) :with ?r :in $ :where [?r :sales-refund/client [:client/code "{{customer}}"]] [?r :sales-refund/total ?total] [?r :sales-refund/fee ?fee] [?r :sales-refund/date ?date] [?r :sales-refund/type ?t] [(clj-time.coerce/to-date-time ?date) ?d2] [(auto-ap.time/localize ?d2) ?d3] [(auto-ap.time/unparse-local ?d3 auto-ap.time/normal-date) ?d4]]